I am using the code I exported from SVN at about 2007-09-18 13:30 UTC.
An exception within TestIndexModifier every time, unless I set the process
affinity to a single CPU.
The specific exception is not always the same. Instead of the
System.SystemException, internal error, exception noted previously, I
occationally see an exception similar to this:
-----------------------------------
Unhandled Exception: System.UnauthorizedAccessException: Access to the path
'C:\Documents and Settings\test-user\Local Setti
ngs\Temp\lucenetestindex\segments_18b' is denied.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.File.Delete(String path)
at Lucene.Net.Store.FSDirectory.DeleteFile(String name) in
F:\Lucene-dev2\Lucene.Net\Store\FSDirectory.cs:line 438
at Lucene.Net.Index.IndexFileDeleter.DeleteFile(String file) in
F:\Lucene-dev2\Lucene.Net\Index\IndexFileDeleter.cs:line 257
at Lucene.Net.Index.IndexFileDeleter.DeleteFiles(ArrayList files) in
F:\Lucene-dev2\Lucene.Net\Index\IndexFileDeleter.cs:line
249
at Lucene.Net.Index.IndexFileDeleter.DeleteFiles() in
F:\Lucene-dev2\Lucene.Net\Index\IndexFileDeleter.cs:line 355
at Lucene.Net.Index.IndexWriter.Init(Directory d, Analyzer a, Boolean
create, Boolean closeDir) in F:\Lucene-dev2\Lucene.Net\
Index\IndexWriter.cs:line 473
at Lucene.Net.Index.IndexWriter..ctor(Directory d, Analyzer a, Boolean
create) in F:\Lucene-dev2\Lucene.Net\Index\IndexWriter
.cs:line 324
at Lucene.Net.Index.IndexModifier.CreateIndexWriter() in
F:\Lucene-dev2\Lucene.Net\Index\IndexModifier.cs:line 196
at Lucene.Net.Index.IndexModifier.AddDocument(Document doc, Analyzer
docAnalyzer) in F:\Lucene-dev2\Lucene.Net\Index\IndexMod
ifier.cs:line 255
at Lucene.Net.Index.IndexModifier.AddDocument(Document doc) in
F:\Lucene-dev2\Lucene.Net\Index\IndexModifier.cs:line 272
at Lucene.Net.Index.IndexThread.Run() in
F:\Lucene-dev2\Test\Index\TestIndexModifier.cs:line 303
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
-----------------------------------
System info lists my machine as:
OS Name: Microsoft Windows XP Professional
OS Version: 5.1.2600 Service Pack 2 Build 2600
OS Build Type: Multiprocessor Free
System type: X86-based PC
Processor(s): 2 Processor(s) Installed.
[01]: x86 Family 15 Model 4 Stepping 3 GenuineIntel
~3192 Mhz
[02]: x86 Family 15 Model 4 Stepping 3 GenuineIntel
~3192 Mhz
Windows Directory: C:\WINDOWS
System Directory: C:\WINDOWS\system32
Boot Device: \Device\HarddiskVolume1
System Locale: en-us;English (United States)
Input Locale: en-us;English (United States)
Total Physical Memory: 1,014 MB
Available Physical Memory: 549 MB
Virtual Memory: Max Size: 2,048 MB
Virtual Memory: Available: 2,008 MB
Virtual Memory: In Use: 40 MB
Page File Location(s): C:\pagefile.sys
One additional factor, although the machine is shown as having 2 CPUs, it is
actually a single Pentium 4 with Hyperthreading.
-- Neal
-----Original Message-----
From: George Aroush [mailto:[EMAIL PROTECTED]
Sent: Wednesday, September 19, 2007 8:34 AM
To: [email protected]
Subject: RE: Unit test TestIndexWithThreads fails
<snip>
I have seen this too, once. Another variation on this that I saw once was
the test would never finish. But this was early on when there were still
dozens of NUnit tests still failing. How up-to-date is your code with SVN?
Speaking of TestIndexWithThreads, if you compare the time it takes for this
test to run against Lucene Java, you will see that the .NET one is 100's of
times slower then the Java one. Any idea why?
-- George