Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] Fix for Bug 44010


This patch fixes the indexer merge problem on large projects.

Automation Test Suite run on Windows + Linux.

- Bogdan

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/ChangeLog,v
retrieving revision 1.157
diff -u -r1.157 ChangeLog
--- ChangeLog	1 Oct 2003 14:18:23 -0000	1.157
+++ ChangeLog	1 Oct 2003 17:26:55 -0000
@@ -1,3 +1,10 @@
+2003-10-01 Bogdan Gheorghe
+
+	Modified CDTLogWriter: increased max log file size to 10MB; got rid of
+	the stack dumps/
+	
+	* src/org/eclipse/cdt/internal/core/CDTLogWriter.java
+	
 2003-10-01 Rob Jackson
 
 	Avoid a NPE when processing non-absolute FILE references in elf binaries
Index: index/ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/index/ChangeLog,v
retrieving revision 1.22
diff -u -r1.22 ChangeLog
--- index/ChangeLog	1 Oct 2003 13:33:33 -0000	1.22
+++ index/ChangeLog	1 Oct 2003 17:26:55 -0000
@@ -1,3 +1,7 @@
+2003-10-01 Bogdan Gheorghe
+	Modified BlockIndexOutput.addInclude to properly flush an
+	include block once it's full.
+	
 2003-09-30 Bogdan Gheorghe
 	Changed logging for SourceIndexer to log file in cdt.core
 	
Index: index/org/eclipse/cdt/internal/core/index/impl/BlocksIndexOutput.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/index/org/eclipse/cdt/internal/core/index/impl/BlocksIndexOutput.java,v
retrieving revision 1.3
diff -u -r1.3 BlocksIndexOutput.java
--- index/org/eclipse/cdt/internal/core/index/impl/BlocksIndexOutput.java	26 Sep 2003 17:53:31 -0000	1.3
+++ index/org/eclipse/cdt/internal/core/index/impl/BlocksIndexOutput.java	1 Oct 2003 17:26:55 -0000
@@ -121,7 +121,7 @@
 			if (includeIndexBlock.isEmpty()) {
 				return;
 			}
-			flushWords();
+			flushIncludes();
 			addInclude(entry);
 		}
 	}
@@ -179,7 +179,7 @@
 	/**
 	 * 
 	 */
-	public void flushIncludes() throws IOException {
+	protected void flushIncludes() throws IOException {
 		if (!firstInBlock 
 			&& includeIndexBlock != null) { // could have added a document without any indexed word, no block created yet
 		includeIndexBlock.flush();
Index: parser/ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/parser/ChangeLog,v
retrieving revision 1.148
diff -u -r1.148 ChangeLog
--- parser/ChangeLog	1 Oct 2003 17:10:15 -0000	1.148
+++ parser/ChangeLog	1 Oct 2003 17:26:56 -0000
@@ -1,8 +1,12 @@
+2003-10-01 Bogdan Gheorghe
+	Modified CDT log dump in Parser.fetchToken to include error message
+
 2003-10-01 Andrew Niefer
 	bug43450 - Scanner needs to handle include paths that contain quotes
 
 2003-09-30 Bogdan Gheorghe
 	Added CDT log dump  in Parser.fetchToken to catch HandleInclusion failures
+
 2003-09-30 John Camelon
 	Fixed Bug 43503 : Search:f_SD_01 cannot be found in ManyClasses20 Project 
 	Fixed Bug 43680 : Fix Parser Error Handling 
Index: parser/org/eclipse/cdt/internal/core/parser/Parser.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/Parser.java,v
retrieving revision 1.118
diff -u -r1.118 Parser.java
--- parser/org/eclipse/cdt/internal/core/parser/Parser.java	1 Oct 2003 13:33:33 -0000	1.118
+++ parser/org/eclipse/cdt/internal/core/parser/Parser.java	1 Oct 2003 17:26:57 -0000
@@ -4988,7 +4988,7 @@
         catch (ScannerException e)
         {
             Util.debugLog( "ScannerException thrown : " + e.getMessage(), IDebugLogConstants.PARSER );
-			org.eclipse.cdt.internal.core.model.Util.log(e, "Scanner Exception", ICLogConstants.CDT); //$NON-NLS-1$h
+			org.eclipse.cdt.internal.core.model.Util.log(e, "Scanner Exception: " + e.getMessage() , ICLogConstants.CDT); //$NON-NLS-1$h
             if( e.isSeriousError(mode) )
             {
             	failParse(); 
Index: src/org/eclipse/cdt/internal/core/CDTLogWriter.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/core/CDTLogWriter.java,v
retrieving revision 1.1
diff -u -r1.1 CDTLogWriter.java
--- src/org/eclipse/cdt/internal/core/CDTLogWriter.java	1 Oct 2003 13:33:34 -0000	1.1
+++ src/org/eclipse/cdt/internal/core/CDTLogWriter.java	1 Oct 2003 17:26:57 -0000
@@ -34,14 +34,14 @@
 	protected boolean newSession = true;
 	
 	protected static final String SESSION = "*** SESSION";//$NON-NLS-1$
-	protected static final String ENTRY = "*** ENTRY";//$NON-NLS-1$
-	protected static final String SUBENTRY = "*** SUBENTRY";//$NON-NLS-1$
-	protected static final String MESSAGE = "*** MESSAGE";//$NON-NLS-1$
-	protected static final String STACK = "*** STACK";//$NON-NLS-1$
+	protected static final String ENTRY = "ENTRY";//$NON-NLS-1$
+	protected static final String SUBENTRY = "SUBENTRY";//$NON-NLS-1$
+	protected static final String MESSAGE = "MESSAGE";//$NON-NLS-1$
+	protected static final String STACK = "STACK";//$NON-NLS-1$
 
 	protected static final String LINE_SEPARATOR;
 	protected static final String TAB_STRING = "\t";//$NON-NLS-1$
-	protected static final long MAXLOG_SIZE = 5000000;
+	protected static final long MAXLOG_SIZE = 10000000;
 	static {
 		String s = System.getProperty("line.separator");//$NON-NLS-1$
 		LINE_SEPARATOR = s == null ? "\n" : s;//$NON-NLS-1$
@@ -185,7 +185,8 @@
 		writeSpace();
 		writeln(status.getMessage());
 
-		write(status.getException());
+		//Took out the stack dump - too much space
+		//write(status.getException());
 
 		if (status.isMultiStatus()) {
 			IStatus[] children = status.getChildren();

Back to the top