Skip to content

Fix MMapDirectory performance and crashes via raw memory access and drain-reclaiming, #1151, #1013#1373

Open
paulirwin wants to merge 42 commits into
apache:masterfrom
paulirwin:issue/1013-mmap-reclaimer
Open

Fix MMapDirectory performance and crashes via raw memory access and drain-reclaiming, #1151, #1013#1373
paulirwin wants to merge 42 commits into
apache:masterfrom
paulirwin:issue/1013-mmap-reclaimer

Conversation

@paulirwin

@paulirwin paulirwin commented Jun 21, 2026

Copy link
Copy Markdown
Contributor
  • You've read the Contributor Guide and Code of Conduct.
  • You've included unit or integration tests for your change, where applicable.
  • You've included inline docs for your change, where applicable.
  • There's an open issue for the PR that you are making. If you'd like to propose a change, please open an issue to discuss the change or find an existing issue.

An alternative approach to fixing MMapDirectory, via a DrainReclaimer class.

Fixes #1013
Fixes #1151

Description

This is an alternative approach to #1361, as a stacked PR on top of that for comparison. Much of the underlying work is the same, but this fixes the dilemma of risking AVEs vs non-deterministic GC cleanup.

First, some benchmarks:

Design MMap parallel req/s MMap serial req/s vs SimpleFS (parallel) vs Beta 17 MMap (parallel)
beta17 (4.8.0-beta00017) 460.49s 217 7.86s 12,722 260x slower (n/a)
finalizer (mmap-redesign) 0.64s 156,000 3.38s 29,600 2.8x faster 720x faster
drain reclaimer (mmap-reclaimer) 0.68s 149,000 3.84s 26,100 2.6x faster 677x faster

(Note that I have a different machine than the prior benchmarks in #1151, but this was modeled in the same way. This new machine has more cores, and thus performs even worse under heavy concurrent load for beta 17.)

This branch/approach has a very small performance penalty compared to #1361, but allows for deterministic cleanup (does not rely on GC/finalizers), and does not have AVE risk either.

Core Idea

The core idea of this PR is that it uses a "drain reclaimer" to track entries and exits around raw memory access. When the parent requests closure, if any readers are mid-read, it will spin-wait until all readers have exited before reclaiming the memory. This is how it prevents AVEs at the readers. The Enter/Exit calls are around short critical regions that are not expected to throw or hang, but could theoretically be de-scheduled by the OS under heavy multitasking contention. The spin-wait will spin for a few cycles then yield to allow the OS to clear the threads. This is analogous to Lucene 10.x's behavior.

This is implemented via volatile reads/writes to be lock-free. This results in very good performance, only a minimal penalty compared to the other PR which lacks these checks.

Other Ideas Explored

To get here, I first explored the JDK FFM API to understand how it was implemented. I thought that maybe we could re-implement the API in .NET, but that is not really possible, since it requires a HotSpot feature that checks stack traces for "scoped" regions.

This wasn't a dead-end, though. Through extensive conversation with Claude Code, it made me learn about a technique called Epoch-Based Reclamation. This allows for lock-free reclamation of protected resources like raw memory access across concurrent threads. I prototyped this, but it wasn't quite right: it is more for longer-lived protection than a single IndexInput.

This then brought me to the idea of Hazard Pointers, which is almost identical to what this PR is, the only difference is that with a HP, the HP owns the pointer, whereas here the DrainReclaimer just does the bookkeeping of concurrent access, and the pointer is owned by the chunk. But it's very close in theory to Hazard Pointers, and operates much in the same way. I called this type DrainReclaimer since it isn't a true HP.

paulirwin and others added 30 commits June 16, 2026 17:35
…ss slices

- Move MemoryMappedViewAccessorIndexInput into MMapDirectory.cs as the
  internal nested MMapIndexInput class, per the repo convention of not
  adding new files in Lucene-derived directories.
- Replace the slicer's manual dispose loop with
  IOUtils.DisposeWhileHandlingException.
- Share one MemoryMappedFile + chunk array per file per MMapDirectory
  instance via a refcounted SharedMapping tracked in a
  ConcurrentDictionary<string, Lazy<SharedMapping>>. OpenInput,
  CreateSlicer, its slices, and clones all piggyback on the same
  underlying mapping; the mapping is torn down when the last referrer
  disposes.
- Use bufferSize: 1 + RandomAccess | Asynchronous on all FileStream
  creations since MemoryMappedFile bypasses the FileStream buffer.
- Add a FEATURE_CONCURRENTDICTIONARY_TRYREMOVE_KEYVALUEPAIR gate and a
  polyfill in Support/ConcurrentDictionaryExtensions.cs for target
  frameworks predating .NET 5, where the TryRemove(KeyValuePair)
  overload is unavailable.
- Add TestSharedMappingLifecycle covering the end-to-end lifecycle of
  the shared mapping across OpenInput, slicer, slices, and clones.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Upstream Java's MMapDirectory.map allocates nrBuffers = floor + 1 and
tolerates a final 0-byte ByteBuffer at `buffers[N]`. That sentinel
exists because ByteBufferIndexInput's read loop unconditionally
advances its buffer cursor past the end of each buffer, so indexing
`buffers[N]` must remain valid after reading the last byte of a file
whose length is a whole multiple of chunkSize.

Our ReadInternal bounds-checks `pos + len` before indexing and only
advances `chunkIdx` while `len > 0`, so no sentinel is needed. Also,
MemoryMappedFile.CreateViewAccessor rejects a zero-length view, which
would force a special-case code path anyway.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Each OpenInput/CreateSlicer now creates a fresh SharedMapping rather
than sharing one via a per-file ConcurrentDictionary cache. Matches
upstream Java Lucene 4.8.1 (fresh FileChannel.map() per openInput) and
fixes the stale-length divergence where a second OpenInput after a
file grew on disk would observe the cached length.

Removes _mappings, AcquireMapping/ReleaseMapping, Lazy<SharedMapping>,
and SharedMapping's refcount (TryAcquire/Release). Ownership becomes
a simple ownsMapping bool passed at MMapIndexInput construction; only
root instances and slicers dispose the underlying mapping.

Adds three tests covering snapshot-at-open semantics, second-open-
after-growth, and reopen-after-cache-drained — confirmed to match
upstream Java behavior via a Maven repro against lucene-core 4.8.1.

Benchmarked against the cached design and upstream Java (BDN on .NET 10,
JMH on JDK 8): no-cache is within noise on 5/6 benchmarks; the only
measurable cost is ~250 us over 100 sequential opens of the same file
at 64 MB, a synthetic workload Lucene callers don't hit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ointers

Rewrites the inner IndexInput to derive directly from IndexInput
rather than BufferedIndexInput, and to read straight from cached raw
pointers obtained once per chunk via SafeBuffer.AcquirePointer.
ReadByte / ReadInt16 / ReadInt32 / ReadInt64 become single-bounds-
check fast paths with no managed-buffer indirection; ReadVInt32,
ReadVInt64, ReadString, etc. inherit from DataInput and call our fast
ReadByte, so they pick up the speedup automatically. This mirrors
upstream Java's ByteBufferIndexInput, which also derives directly from
IndexInput.

Per-chunk concurrency now uses a rent count + closed flag packed into
a single int. A reader holds a "rent" on the chunk for as long as it
caches that chunk's pointer (between chunk crossings, or until Seek /
Dispose). Chunk.Close flips the closed bit immediately, but the actual
ReleasePointer + accessor.Dispose is deferred until every outstanding
rent has been released. This is the lazy-unmap pattern: Close never
blocks, no SpinWait, and AccessViolationExceptions are structurally
impossible because UnmapViewOfFile / munmap can't run while any rent
is outstanding — fixing apache#1013 by construction rather than by retry.

The fast path stores a precomputed `readBase` pointer (chunkBasePtr +
baseOffset - chunkFileStart) so the hot-path load is a single
*(readBase + pos) with no extra adds. ReadBytes uses
Unsafe.CopyBlockUnaligned with a chunk-crossing loop. Cross-thread
Dispose (slicer.Dispose tearing down slices being read on other
threads — the apache#1013 scenario) clears currentEnd to 0 from any thread;
the reader's next call falls into the slow path, observes the closed
state, releases its own rent on its own thread, and throws
AlreadyClosedException.

Adds extensive unit tests in TestMultiMMap covering chunk-boundary
crossings for every read entry point (ReadByte, ReadInt16/32/64,
ReadVInt32/64, ReadBytes, Seek, SkipBytes), cross-thread Dispose
during reads, post-X-thread-dispose read paths, slicer-Dispose-while-
slices-being-read, double-dispose idempotency, sliced reads with non-
zero base offsets across chunk boundaries, EOF at exact length, and
zero-length file handling.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Final pre-merge review pass. Four small changes plus matching tests:

- Drop unused Chunk.IsClosed property. Was only referenced by stale
  comments from an earlier design; no callers in source or tests.

- Use Interlocked.Exchange instead of Volatile.Write to clear
  currentEnd from the cross-thread Dispose path. Lucene.NET still
  targets net462, where 64-bit writes can tear on 32-bit x86. The
  rent keeps the mapping alive so a torn write isn't a memory-safety
  bug, but it could let a disposed reader return one extra byte
  before throwing on the next call. Interlocked.Exchange is atomic on
  every supported runtime.

- Validate offset/length in IndexInputSlicer.OpenSlice. Reject
  negative offset, negative length, and ranges that exceed the file.
  Previously a bad slice with offset+length > mapping.Length would
  read trailing zero bytes from the page-rounded mapping rather than
  failing — Java's MMapDirectory validates here too.

- MMapIndexInput.Clone() now checks instanceClosed up front and
  throws AlreadyClosedException, rather than deferring the failure to
  the first read on the clone. Matches upstream Java's fail-fast
  contract.

Tests: adds TestOpenSlice_OutOfBounds_Throws covering negative
offsets/lengths, ranges past EOF, and the legitimate edge cases (empty
slice at start, empty slice at file end, full file);
TestCloneAfterRootDispose_ThrowsAlreadyClosed locking in the new
Clone fail-fast contract; TestSliceNonZeroOffset_SeekToZero_ReadsSliceStart
exercising slice-relative Seek(0) from a slice that begins mid-chunk.
Updates TestCloneAfterDispose_ReadsThrowAlreadyClosed (the post-
dispose half) to expect Clone() itself to throw.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…1090 retry loop

MemoryMappedFile.CreateFromFile accepts capacity: 0 to mean "size the
mapping from the file's current length on disk." The framework does its
own stat as part of the mapping creation, so there is no caller-side
capacity for the file size to disagree with — the race window that
apache#1090 was about is closed at the API boundary.

This also lets us drop the FileStream we were holding alongside
SharedMapping. The only thing it was being used for was capturing
fc.Length to feed into our retry loop, plus being kept alive so the
mapping had a handle. The path-based CreateFromFile overload opens
its own handle and disposes it with the MemoryMappedFile, so we no
longer need our own.

Removes the retry loop in CreateMemoryMappedFile, the s_capacityRetryCount
and s_maxCapacityAttemptsObserved test-observability counters, and the
fileStream field on SharedMapping.

Rewrites TestOpenInputConcurrentFileExtension_Issue1090 from a "race
fired and was retried" assertion into a "OpenInput succeeds under
concurrent file extension" smoke test. With capacity: 0 the original
race no longer reaches the framework, so 8700 OpenInput iterations
over 15s observed zero retries before the change. The test now
shortens to a 5s window and simply asserts that every OpenInput
completes cleanly while another thread extends/truncates the file.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…-while-mapped

The path-based MemoryMappedFile.CreateFromFile overload internally
opens the file with FileShare.Read. On Windows that blocks any
subsequent open-for-write or open-for-delete on the same file while
we hold the mapping. Callers like FreeTextSuggester build a temp
index, dispose the directory, and then recursively delete the
directory; on Windows that recursive delete fails with
"The process cannot access the file ... because it is being used by
another process" because Windows requires FILE_SHARE_DELETE on the
existing handle for a delete to proceed against an open file.

Switch back to opening our own FileStream so we control the share
flags. We use FileShare.ReadWrite | FileShare.Delete to match the
prior behavior (other writers/deleters can proceed; Windows will
defer the actual unlink until our last close, which is the standard
Unix-like semantic the rest of the framework expects). We still
pass capacity: 0 to CreateFromFile so the framework does its own
size stat — the apache#1090 race window stays closed. leaveOpen: false
hands the FileStream's lifetime to the MMF, so we don't have to
track it as a SharedMapping field.

Zero-length files are handled up front rather than letting
CreateViewAccessor reject the empty view: we dispose the FileStream
eagerly and return an empty SharedMapping.

Caught by Windows CI: TestFreeTextSuggester.TestBasic and siblings
failed with InvalidOperationException("failed to remove ...") wrapped
around IOException("write.lock ... being used by another process")
on net8.0 / net472 / net48 Windows runners. Linux passed because
Linux's "delete while open" semantics don't depend on the open
handle's share mode.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The slow path of ReadInt16/32/64 routed through base.ReadIntXX, which
called back into our ReadByte 2-8 times via virtual dispatch. Replace
with stackalloc + ReadBytes + BinaryPrimitives.ReadXxxBigEndian so the
JIT can devirtualize the inner reads.

ReadBytes(byte[]) and ReadBytes(Span<byte>) now share a private
ReadBytesCore(ref byte, int) that takes a raw ref to skip the per-call
Span ctor and per-iteration Slice/GetReference. Adds a small-copy
switch (1/2/4/8) so the int slow paths avoid CopyBlockUnaligned entry
overhead.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Chunk's basePtr/length fields are internal-readonly and used outside
the type, so they were renamed to PascalCase per review. The API scan
flags any non-public field that doesn't match camelCase; add an
exception regex for these two as suggested in the review.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ing cleanup

SharedMapping now owns and deterministically disposes the backing
FileStream (leaveOpen: true) instead of relying on the finalizer; the
MemoryMappedFile only borrows the handle and never disposes the stream
object. Adds internal test seams (MMapIndexInput.Mapping,
SharedMapping.IsFileStreamDisposed) and tests asserting the stream is
disposed on input/slicer dispose.

Fixes the two DisposeWhileHandlingException misuses (CreateAttempt and
MapChunks): dispose via the swallowing overload then rethrow with a bare
throw, so the original stack trace is preserved and there is no
double-throw. Removes the dead catch/dispose guards in OpenInput and
CreateSlicer (the constructors only set fields and cannot throw there)
and documents the mapping-ownership and slice-lifetime contracts.
Corrects the test comment that implied AlreadyClosedException is a
distinct type from ObjectDisposedException.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Wraps a real MMapDirectory in MockDirectoryWrapper and exercises the
root input, slicer, and slice disposal paths. On dispose the wrapper
throws "cannot close: there are still open files" if any directly-opened
input/slicer/slice was not disposed, so this gates the MMap-specific
disposal paths end to end (TestRandomChunkSizes already covers the
OpenInput-via-IndexWriter path). Documents that clones are not tracked
by upstream MockDirectoryWrapper and that this gate is at the IndexInput
level, distinct from the FileStream-disposal seam test.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ache#1013)

Fixes a permanent leak of a MemoryMappedViewAccessor (and its mapped
address space) when an MMapIndexInput is disposed on a different thread
than the one holding its cached chunk rent, e.g. IndexInputSlicer.Dispose
tearing down slices that other threads are still reading (the apache#1013
scenario). NightOwl888 reproduced this on PR apache#1267 as a non-zero
undisposed-accessor openCount after a postings-format test run.

Root cause: the cross-thread Dispose path correctly skips releasing the
reader's rent (releasing it there could unmap the view under a live read,
an AVE). But if that reader then stops reading without disposing on its
own thread, the rent is never released, so the chunk's inFlight count
stays >= 1, Chunk.ReleaseNative never runs, Chunk.accessor is never nulled
and stays reachable via SharedMapping.Chunks[], so the accessor is never
finalized and the view is never unmapped, for the process lifetime.

Fix: on the cross-thread Dispose path, hand the stranded rent off to a
finalizable StrandedRentReleaser whose finalizer calls Chunk.Release()
exactly once. The releaser is a separate object (not a finalizer on
MMapIndexInput, which the base IndexInput.Dispose() would un-arm via its
unconditional GC.SuppressFinalize) referenced from the input, so its
finalizer runs only once the input is unreachable, at which point no
thread can be mid-read through it, making the Release (and any resulting
unmap) AVE-safe. The same-thread Dispose path is unchanged and stays
allocation- and finalizer-free; the hot read path is untouched.

ReleaseCurrentChunk and HandOffStrandedRent both swap currentChunk via
Interlocked.Exchange so a rent is released at most once.

Adds TestStrandedChunkRentReclaimedByFinalizer (a TDD regression test that
fails without the handoff and passes with it) plus two internal test-only
Chunk seams (IsNativeReleased, IsNativeReleasedOrZeroRent). Verified
against the nightly cross-thread/slicer stress tests (no AVE).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…integration)

Rebasing onto master pulled in apache#1357 (path validation for FSDirectory),
which added EnsureCanRead(name) to MMapDirectory.OpenInput. On master,
CreateSlicer delegated to OpenInput, so it was covered transitively. The
PR's redesigned CreateSlicer builds its own SharedMapping and no longer
routes through OpenInput, so it would have silently dropped that
validation. Call EnsureCanRead(name) directly in CreateSlicer to preserve
apache#1357's behavior.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the hand-rolled per-chunk "rent" state machine (packed
state/CLOSED_BIT/RENT_INC, TryAcquire/Release/Close/ReleaseNative CAS
loops) with the BCL's own SafeMemoryMappedViewHandle refcount: a
per-chunk-crossing AcquirePointer/ReleasePointer is the drain barrier,
and accessor.Dispose() defers the actual unmap until all references
drain and fails a later crossing fast (ObjectDisposedException ->
AlreadyClosedException). This is the .NET-native equivalent of the
custom rent, correct by construction, and apache#1151-safe because the
reference is taken once per chunk crossing, not per read (a per-read
refcount touch is the ~218x concurrency cliff apache#1151 is about).

The cross-thread Dispose deferral is still required: a disposer must not
release a read reference the acquiring reader may be mid-dereference of,
or Chunk.Close could unmap the view under it (AVE). A same-thread
Dispose releases directly; a cross-thread Dispose hands the reference to
a finalizable StrandedReadRefReleaser that releases it once the input is
unreachable. This is proven necessary by
TestConcurrentSliceReadVsSlicerDispose, which AVEs without it.

Tests: replace the finalizer-reclamation test with deterministic
cross-thread-dispose and clone-dispose leak tests that assert chunk
views and the backing FileStream are released synchronously (no
GC.Collect/WaitForPendingFinalizers). The clone-dispose test closes the
gap NightOwl888 hit (apache#1267): MockDirectoryWrapper's open-files gate does
not track clones, so a clone leaking its view on its own Dispose would
not fail that gate but would keep the file mapped (blocking overwrite/
delete on Windows). All 4 nightly concurrent race tests pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull the Lucene.NET-specific raw-pointer chunked read engine out of
MMapDirectory.MMapIndexInput into a reusable base class. Upstream Java
keeps this logic in ByteBufferIndexInput (a real Store class), but ours
is a .NET-specific invention with no Java counterpart, so it lives under
Support/ per convention (and gets no compatibility-level header).

The base owns the cursor, the fast read paths (ReadByte/ReadInt*/
ReadBytes), the chunk-crossing logic, and the concurrency/teardown
coordination (per-crossing read reference, cross-thread strand deferral,
StrandedReadRefReleaser). A subclass supplies only the chunk source via
four members: ChunkCount, TryAcquireChunk(int, out byte*),
ReleaseChunk(int), ChunkLength(int). The engine keys the cached chunk by
int index and never sees the underlying MemoryMappedViewAccessor.

MMapIndexInput becomes a thin subclass that wires those four to a
SharedMapping's Chunks plus Clone/DisposeChunkSource. MMapDirectory.cs
drops from ~1330 to ~760 lines; behavior is unchanged and all existing
TestMultiMMap tests (incl. the 4 nightly concurrent race tests) pass.

The extraction's payoff is testability: a managed-byte[]-backed
UnsafeChunkIndexInput subclass can unit-test the engine logic without
real mmap - no host-crashing AVEs, and the cross-thread strand path can
be forced deterministically with a barrier. TestUnsafeChunkIndexInput
adds such a fixture covering read correctness across chunk boundaries,
fail-fast (read after close -> AlreadyClosed), reference lifecycle, and
the forced cross-thread strand (a reader parked inside TryAcquireChunk
while another thread disposes the clone; asserts the engine defers
rather than releasing the reader's reference). The GC/finalizer
reclamation tail is left to the deterministic real-mmap tests, as it is
inherently timing-dependent.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…hunkIndexInput

Trim the //-comment prose in the two production source files (was ~40-53% of each
file) down to what a reviewer needs: concurrency invariants, ordering requirements,
platform gotchas, upstream-Java pointers, and issue references. Cut play-by-play
narration, restatements of standard BCL behavior, repeated rationale, and hedging.
No executable code, signatures, or control flow changed; XML-doc API summaries are
left intact. Net -118 comment lines.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The TestApiConsistency.TestPrivateFieldNames lint requires non-public field names
to be camelCase or ALL_CAPS (regex ^_?[a-z][a-zA-Z0-9_]*$|^[A-Z0-9_]+$). The
PascalCase const NoChunk matched neither and failed the scan on every framework.
Rename to NO_CHUNK, matching the codebase convention for consts (e.g. DEFAULT_MAX_BUFF).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ently (apache#1013)

Pins the invariant that a same-thread Dispose of the owning MMapIndexInput is not
the Java unmap-hack. The owning thread reads and disposes the master same-thread
while N other threads read clones sharing the master's mapping. Disposing the owner
closes the shared chunks (requesting unmap), but the SafeHandle refcount defers the
actual unmap until every reader's outstanding AcquirePointer reference drains, so
sibling readers never dereference a freed view. The owner releases only its own
reference; sibling readers see valid bytes or AlreadyClosed, never an AVE.

Ran 16,690 interleaved iterations in 15s on net10.0 with no AVE/NRE/IOException.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
paulirwin and others added 7 commits June 19, 2026 14:58
…e#1151)

Wire the MMapDirectory read engine to an IMMapReclaimer that defers each
mapping's unmap until in-flight readers drain, replacing the cross-thread
StrandedReadRefReleaser finalizer with a hazard-pointer-style handshake.

- HazardMMapReclaimer: each reader owns a private depth slot; Enter announces
  a dereference and Exit drains it. Close publishes a closed flag and scans the
  slots, deferring the unmap until all readers drain (no AVE). Asymmetric
  fencing keeps the hot path fence-free where Interlocked.MemoryBarrierProcessWide
  is available (net core), falling back to a symmetric per-read barrier on
  net462/netstandard2.0.
- Chunk caches its base pointer once at map time; the per-chunk-crossing
  AcquirePointer (the apache#1151 contention) is gone. Release performs the unmap.
- UnsafeChunkIndexInput brackets each dereference with Enter/Exit; each clone
  re-registers for its own slot (ResetClonedCursor) so root and clones never
  share a depth counter.
- Tests: rewrite the engine tests to the new model; add a PausingReclaimer that
  parks a reader inside the bracket to prove Close defers the unmap until drain.

All engine + nightly real-mmap race tests pass (no AVE). Benchmark vs the
finalizer: the asymmetric fence preserves the apache#1151 concurrency win (x8 ~4900
MiB/s, ~6x SimpleFS) but is still ~2.4x slower single-threaded; further hot-path
optimization to follow.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…e reads

Close the single-thread and concurrency gaps vs the finalizer baseline while
keeping the lock-free, finalizer-free design.

- Drop the IMMapReclaimer interface (HazardMMapReclaimer is the only impl); the
  read engine holds the concrete reclaimer + Slot, so Enter/Exit devirtualize
  and inline.
- Asymmetric fencing: the hot path takes no StoreLoad barrier; Close issues a
  process-wide barrier (Interlocked.MemoryBarrierProcessWide, gated on the new
  FEATURE_MEMORYBARRIER_PROCESSWIDE) so every reader's announce is visible to the
  scan. net462/netstandard2.0 fall back to a symmetric per-read barrier.
- The hot read paths call EnterCore/Exit directly instead of using/try-finally:
  the bracketed body is a raw Unsafe load that can only AVE (uncatchable) and
  never throws a managed exception, so the finally never runs. Removing the try
  region restores JIT enregistration and nearly halves SeqReadByte. Add a
  ReadScope ref struct for the using-friendly form (not on the hot path).
- Tighten scopes to wrap only the dereference; tests use a slot OnEnterForTest
  hook instead of a reclaimer decorator.

Benchmark (net10.0 Release, 64 MiB, 16 cores) vs the finalizer:
  SeqReadByte 1.71 vs 1.22 ns/byte (1.4x, and faster than SimpleFS 1.69)
  Concurrent x8 ~4900 vs 6293 MiB/s (78%, still ~4.6x SimpleFS)
The apache#1151 concurrency win is preserved. All engine + nightly real-mmap race
tests pass (no AVE).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Slot.Exit decremented Depth with a plain store on the fast path. The protected
pointer load in the caller and the Depth-- have no data dependency, so on a
weakly-ordered CPU (ARM64) the decrement could become globally visible before
the load retires - letting Close's scan observe Depth==0 and unmap the page
while the load is still outstanding (AccessViolationException). The asymmetric
process-wide barrier in Close only orders the Enter/announce side; the
Exit/retire side needs a release store so the load completes first.

Use Volatile.Write for the decrement on all target frameworks (the
net462/netstandard2.0 fallback already did this; the fast path had dropped it).
Latent on x64 (TSO does not reorder loads after stores), reachable on ARM64.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Rename HazardMMapReclaimer -> DrainReclaimer: the type is not MMap-specific
  (Register/Enter/Exit/Close over any shared resource). It's a per-user drain
  barrier, hazard-pointer-inspired but using a re-entrancy counter rather than
  tagging a pointer, so the name reflects what it does. Generalize the class doc.
- Use the ReadScope/using form on the bulk ReadBytesCore copy (amortized over a
  whole chunk, so the try-finally is negligible - confirmed 0.063 ns/byte), which
  also gives ReadScope/Enter() a real use instead of leaving them dead.
- Fix accessor leak: the Chunk ctor now does a fallible AcquirePointer, so wrap
  its construction to dispose the in-flight accessor if it throws (it isn't in
  result[] yet, so DisposeChunks would miss it).
- Refresh stale doc-comments that still described the old per-chunk-crossing
  read reference / SafeHandle-refcount drain model (the comment at the chunk-
  creation site actively contradicted the new cached-pointer code).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Unit tests for the lock-free DrainReclaimer primitive, independent of
MMapDirectory: registration returns distinct slots, Enter/Exit balances and
is re-entrant, the ReadScope using form ends the bracket, Enter after Close
(and on a slot registered after Close) throws AlreadyClosed without leaving
depth elevated, Close cleans up immediately when idle, defers while a user is
inside the bracket (via the OnEnterForTest seam) then runs on drain, runs the
cleanup exactly once with many users racing, and a nightly concurrent stress
test asserting the cleanup never runs while a user is inside the bracket
(the use-after-free analog) across 2000 iterations.

Also sort the netstandard2.1+ FEATURE_* DefineConstants alphabetically.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add #nullable enable to match the adjacent Support/ files and annotate the two
null-bearing fields (_unmap, OnEnterForTest). The _unmap invocation in TryReclaim
uses the null-forgiving operator with a comment: it is non-null there by the
Close-publishes-before-_closed invariant the analyzer can't see across methods.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add two MMapDirectory tests for the determinism guarantee against real mapped
memory, using only the existing zero-cost SetOnEnterForTest seam (a null-check
already on the hot path - no new production overhead):
- TestCloseWhileCloneReadingDefersUnmapThenReleasesOnDrain: the owner is disposed
  WHILE a clone is parked mid-read; the chunks must stay mapped (deferred), then
  unmap the instant that last reader drains - with no GC/finalizer step. This is
  the close-while-reading ordering the existing tests didn't cover.
- TestLastSliceFinishedThenSlicerDisposeUnmapsDeterministically: a slice reads to
  completion (drained), then the slicer is disposed -> every chunk and the
  FileStream are unmapped synchronously.

Also sweep the MMap tests + comments inherited from the mmap-redesign branch that
described the old per-chunk-crossing read-reference / SafeHandle-refcount drain /
"shared View" / TryEnterRead / "chunk rent" model, which no longer exists on this
branch, and rephrase them for the DrainReclaimer design. Comment-only; behavior
and assertions unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@paulirwin paulirwin requested a review from NightOwl888 June 21, 2026 14:13
@paulirwin paulirwin added the notes:breaking-change Has changes that will break backward compatibility label Jun 21, 2026
paulirwin and others added 4 commits June 22, 2026 07:32
Instead of deferring the cleanup to whichever reader drains last, Close now
spin-waits (SpinWait, which escalates to yielding) until every in-flight user
has drained, then runs the cleanup inline. So SharedMapping.Dispose is now
synchronous: when it returns, the views are unmapped and the FileStream is
closed - matching the Lucene 10.x shared-Arena close model (which likewise
spins the closing thread).

This is deadlock-free under the one-input-per-thread contract: a bracket is
never held across calls (each read closes its own Enter/Exit before returning),
so the thread calling Close can never itself hold a bracket open. The wait only
ever blocks on other threads' short, bounded reads.

Simplifies the primitive: Exit is now a plain release-store decrement (no
reclaim trigger), and the _unmap field, _reclaimed once-guard, and the 100ms
spin bound are gone. Read hot path is unchanged (AdventureWorks apache#1151 MMap
parallel ~0.66s, same as before; Exit is now cheaper). Updated the tests that
asserted the deferred behavior to assert blocking + synchronous unmap. All
engine + 4 nightly real-mmap race tests pass on arm64 (no AVE).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…imary

Add the missing [LuceneNetSpecific] attribute to TestSharedMappingLifecycle (it
tests the LUCENENET-specific SharedMapping/single-MemoryMappedFile-per-file
refactor and has no upstream Java counterpart; the other untagged tests in this
file are genuine 4.8.1 Java ports and correctly stay untagged).

Also rename the "master" IndexInput local/prose to "primary" in the three tests
added in this PR (TestConcurrentCloneReadVsDispose_Issue1013,
TestSameThreadOwnerDisposeWhileSiblingClonesRead_NoAVE,
TestConcurrentCloneVsDispose_RaceScenario) for culturally-aware terminology, and
refresh two stale comments that said the reclaimer "defers" the unmap (it now
blocks until drained). The Java-ported TestCloneSafety keeps its original wording.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…dNames

These PascalCase internal fields can't satisfy the camelCase/ALL_CAPS private-
field rule: Depth is accessed via ref (Volatile.Read/Write(ref slot.Depth)), so
it must stay a field, and OnEnterForTest is the test seam. Add both to the
exception regex, matching the existing precedent for MMapDirectory+Chunk.
BasePtr/Length (same situation: ref-accessed field-like members of a nested
helper class).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ture flag

Delete ConcurrentDictionaryExtensions (TryRemove(KeyValuePair)) - it was added
during early MMap PR feedback for a ConcurrentDictionary-based mapping registry
that was replaced by SharedMapping/DrainReclaimer, and now has zero usages.
Also drop its companion gate FEATURE_CONCURRENTDICTIONARY_TRYREMOVE_KEYVALUEPAIR
(new in this PR, used nowhere else).

Rename FEATURE_MEMORYBARRIER_PROCESSWIDE ->
FEATURE_INTERLOCKED_MEMORYBARRIERPROCESSWIDE to match the FEATURE_<TYPE>_<MEMBER>
convention (the API is Interlocked.MemoryBarrierProcessWide), like
FEATURE_CONDITIONALWEAKTABLE_ENUMERATOR / FEATURE_STREAM_READEXACTLY.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@paulirwin paulirwin marked this pull request as ready for review June 22, 2026 15:42
@paulirwin

paulirwin commented Jun 22, 2026

Copy link
Copy Markdown
Contributor Author

This is now ready for review. All tests pass here on GitHub and on Azure DevOps.

I simplified the cleanup logic so that it no longer tries to clean up on Exit, but instead spin-waits (like Lucene 10.x) at the close caller until all critical regions have exited. This means that the cleanup is back to being truly deterministic (although, like in Lucene 10.x, subsequent readers that try to enter a critical region after close has been requested will get an AlreadyClosedException).

I feel good enough about this that I'm going to mark #1361 as draft just for reference.

Edit: I had my build runs mixed up on ADO. There is one failure I'll investigate on net48:

The active test run was aborted. Reason: Test host process crashed : Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at Lucene.Net.Store.UnsafeChunkIndexInput.ReadByte() in /_/src/Lucene.Net/Support/UnsafeChunkIndexInput.cs:line 221
   at Lucene.Net.Store.TestMultiMMap.<>c__DisplayClass53_0.<TestCrossThreadCloneDisposeWhileReading>b__0() in /_/src/Lucene.Net.Tests/Store/TestMultiMMap.cs:line 2231
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

@paulirwin paulirwin changed the title MMapDirectory Alternative Approach, #1151, #1013 Fix MMapDirectory performance and crashes via raw memory access and drain-reclaiming, #1151, #1013 Jun 22, 2026
TestCrossThreadCloneDisposeWhileReading crashed the test host on net48 x64 with
a NullReferenceException in ReadByte at *(readBase + pos): a clone being read on
thread A was disposed on thread B, and Dispose called ReleaseCurrentChunk(),
nulling readBase while thread A sat between its `pos < currentEnd` check and its
dereference.

Dispose now only zeroes currentEnd (the fail-fast gate) and no longer nulls
readBase. There is no native reference tied to the cursor (the DrainReclaimer
owns reclamation, and keeps the view mapped until the owning root closes), so a
stale readBase is harmless: the in-flight read completes against the still-mapped
view, and the zeroed currentEnd makes every subsequent read drop to the slow path
and throw AlreadyClosed. readBase is now only ever nulled by the reading thread
itself (Seek / EnsureCurrentChunk / clone setup), never cross-thread, so the race
is structurally eliminated. The fields are GC'd with the instance.

Latent on net10 (timing-lucky in CI); manifested as a host crash on net48 x64.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@NightOwl888

Copy link
Copy Markdown
Contributor

Okay, I haven't reviewed the code yet, but I checked the behavior. I did a complete test run in Release mode locally and here is the test log:

{
    "assert": "true",
    "tests": {
        "awaitsfix": "false",
        "verbose": "false"
    }
}
Test Log
========== Starting test run ==========
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests._A-D\bin\Release\net10.0\Lucene.Net.Tests._A-D.dll
   NUnit3TestExecutor discovered 682 of 682 NUnit test cases using Current Discovery mode, Non-Explicit run
TestWriteReadMerge:   impersonation isn't good enough
  Expected: True
  But was:  False

TestByteMissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt16MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt32MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt64MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestSortedSetFixedLengthSingleValuedVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetFixedLengthVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetFixedLengthVsUninvertedField:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetMergeAwayAllValues:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetOneValue:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTermsEnum:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetThreeValuesTwoDocs:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsFirstMissing:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsFirstMissingMerge:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsLastMissing:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsLastMissingMerge:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsMerged:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoValues:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoValuesUnordered:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthSingleValuedVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthVsUninvertedField:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestThreads2:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestByteMissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt16MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt32MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt64MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreads2:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

TestMergeStability:   The MockRandom PF randomizes content on the fly, so we can't check it
  Expected: True
  But was:  False

TestLaaaaaargeOutput: Ignored in Lucene
TestProgressiveOutput: Ignored in Lucene
TestThreadLeak: Ignored in Lucene
TestTimeout: Ignored in Lucene
TestUncaughtException: Ignored in Lucene
TestZombie: Ignored in Lucene
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests._E-I\bin\Release\net10.0\Lucene.Net.Tests._E-I.dll
   NUnit3TestExecutor discovered 433 of 433 NUnit test cases using Current Discovery mode, Non-Explicit run
TestFixedBinary: OneTimeSetUp: takes ~ 45 minutes
TestVariableBinary: OneTimeSetUp: takes ~ 45 minutes
TestNumerics: OneTimeSetUp: takes ~ 30 minutes
Test: Very slow. Enable manually by removing Ignore.
Test: LUCENENET specific - takes too long to run on Azure DevOps
Test: Very slow. Enable manually by removing Ignore.
Test2BOrds: OneTimeSetUp: very slow
TestFixedSorted: OneTimeSetUp: very slow
Test2BTerms_Mem: OneTimeSetUp: SimpleText codec will consume very large amounts of memory.
IFD 0 [4/07/2026 17:15:36; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 0 [4/07/2026 17:15:36; .NET TP Worker]: init: load commit "segments_3"IFD 0 [4/07/2026 17:15:36; .NET TP Worker]: now checkpoint "_0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1" [5 segments ; isCommit = False]IFD 0 [4/07/2026 17:15:36; .NET TP Worker]: 0 msec to checkpointIW 0 [4/07/2026 17:15:36; .NET TP Worker]: init: create=FalseIW 0 [4/07/2026 17:15:36; .NET TP Worker]: 
dir=NIOFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.cfs-1m5kxkop lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.cfs-1m5kxkop
index=_0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 0 [4/07/2026 17:15:36; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'NIOFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.cfs-1m5kxkop lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.cfs-1m5kxkop' to version 4.8...IW 0 [4/07/2026 17:15:36; .NET TP Worker]: forceMerge: index now _0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; .NET TP Worker]: now flush at forceMergeTP 0 [4/07/2026 17:15:36; .NET TP Worker]: startDoFlushIW 0 [4/07/2026 17:15:36; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 0 [4/07/2026 17:15:36; .NET TP Worker]:   index before flush _0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1DW 0 [4/07/2026 17:15:36; .NET TP Worker]: startFullFlushDW 0 [4/07/2026 17:15:36; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 0 [4/07/2026 17:15:36; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 0 [4/07/2026 17:15:36; .NET TP Worker]: apply all deletes during flushBD 0 [4/07/2026 17:15:36; .NET TP Worker]: applyDeletes: no deletes; skippingBD 0 [4/07/2026 17:15:36; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 0 [4/07/2026 17:15:36; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.0):c10/1:delGen=1=true, _1(4.0):c10=true, _2(4.0):c10=true, _3(4.0):c5=true, _4(4.0):c1=true}TMP 0 [4/07/2026 17:15:36; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1 segmentsToMerge={_0(4.0):c10/1:delGen=1=true, _1(4.0):c10=true, _2(4.0):c10=true, _3(4.0):c5=true, _4(4.0):c1=true}TMP 0 [4/07/2026 17:15:36; .NET TP Worker]: eligible=[_1(4.0):c10, _2(4.0):c10, _0(4.0):c10/1:delGen=1, _3(4.0):c5, _4(4.0):c1]TMP 0 [4/07/2026 17:15:36; .NET TP Worker]: forceMergeRunning=FalseTMP 0 [4/07/2026 17:15:36; .NET TP Worker]: add final merge=_1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; .NET TP Worker]: add merge to pendingMerges: _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1 [total 1 pending]IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge merging= []IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge info=_1(4.0):c10IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge info=_2(4.0):c10IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge info=_0(4.0):c10/1:delGen=1IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge info=_3(4.0):c5IW 0 [4/07/2026 17:15:36; .NET TP Worker]: registerMerge info=_4(4.0):c1CMS 0 [4/07/2026 17:15:36; .NET TP Worker]: now mergeCMS 0 [4/07/2026 17:15:36; .NET TP Worker]:   index: _0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1CMS 0 [4/07/2026 17:15:36; .NET TP Worker]:   consider merge _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1CMS 0 [4/07/2026 17:15:36; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 0 [4/07/2026 17:15:36; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 0 [4/07/2026 17:15:36; .NET TP Worker]:   no more merges pending; now returnCMS 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]:   merge thread: startTP 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: startMergeInitBD 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merge seg=_5 _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: now merge
  merge=_1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1
  index=_0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merging _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: seg=_1(4.0):c10 no deletesIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: seg=_2(4.0):c10 no deletesIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: seg=_0(4.0):c10/1:delGen=1 delCount=1IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: seg=_3(4.0):c5 no deletesIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: seg=_4(4.0):c1 no deletesSM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5SM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 8 msec to merge stored fields [35 docs]SM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 36 msec to merge postings [35 docs]SM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 24 msec to merge doc values [35 docs]SM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 15 msec to merge norms [35 docs]SM 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 26 msec to merge vectors [35 docs]IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merged segment size=0.018 MB vs estimate=0.046 MBTP 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: startCommitMergeIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: commitMerge: _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1 index=_0(4.0):c10/1:delGen=1 _1(4.0):c10 _2(4.0):c10 _3(4.0):c5 _4(4.0):c1TP 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: startCommitMergeDeletesIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: commitMergeDeletes _1(4.0):c10 _2(4.0):c10 _0(4.0):c10/1:delGen=1 _3(4.0):c5 _4(4.0):c1IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: 0 msec to checkpointIW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]: merge time 141 msec for 35 docsCMS 0 [4/07/2026 17:15:36; Lucene Merge Thread #0]:   merge thread: doneIndexUpgrader 0 [4/07/2026 17:15:36; .NET TP Worker]: All segments upgraded to version 4.8IW 0 [4/07/2026 17:15:36; .NET TP Worker]: now flush at close waitForMerges=TrueTP 0 [4/07/2026 17:15:36; .NET TP Worker]: startDoFlushIW 0 [4/07/2026 17:15:36; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 0 [4/07/2026 17:15:36; .NET TP Worker]:   index before flush _5(4.8):C35DW 0 [4/07/2026 17:15:36; .NET TP Worker]: startFullFlushDW 0 [4/07/2026 17:15:36; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 0 [4/07/2026 17:15:36; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 0 [4/07/2026 17:15:36; .NET TP Worker]: apply all deletes during flushBD 0 [4/07/2026 17:15:36; .NET TP Worker]: applyDeletes: no deletes; skippingBD 0 [4/07/2026 17:15:36; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 0 [4/07/2026 17:15:36; .NET TP Worker]: now mergeCMS 0 [4/07/2026 17:15:36; .NET TP Worker]:   index: _5(4.8):C35CMS 0 [4/07/2026 17:15:36; .NET TP Worker]:   no more merges pending; now returnIW 0 [4/07/2026 17:15:36; .NET TP Worker]: waitForMergesIW 0 [4/07/2026 17:15:36; .NET TP Worker]: waitForMerges doneIW 0 [4/07/2026 17:15:36; .NET TP Worker]: now call final commit()IW 0 [4/07/2026 17:15:36; .NET TP Worker]: commit: startIW 0 [4/07/2026 17:15:36; .NET TP Worker]: commit: enter lockIW 0 [4/07/2026 17:15:36; .NET TP Worker]: commit: now prepareIW 0 [4/07/2026 17:15:36; .NET TP Worker]: prepareCommit: flushIW 0 [4/07/2026 17:15:36; .NET TP Worker]:   index before flush _5(4.8):C35TP 0 [4/07/2026 17:15:36; .NET TP Worker]: startDoFlushDW 0 [4/07/2026 17:15:36; .NET TP Worker]: startFullFlushDW 0 [4/07/2026 17:15:36; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 0 [4/07/2026 17:15:36; .NET TP Worker]: apply all deletes during flushBD 0 [4/07/2026 17:15:36; .NET TP Worker]: applyDeletes: no deletes; skippingBD 0 [4/07/2026 17:15:36; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 0 [4/07/2026 17:15:36; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 0 [4/07/2026 17:15:36; .NET TP Worker]: startStartCommitIW 0 [4/07/2026 17:15:36; .NET TP Worker]: StartCommit(): startIW 0 [4/07/2026 17:15:36; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 0 [4/07/2026 17:15:36; .NET TP Worker]: midStartCommitTP 0 [4/07/2026 17:15:36; .NET TP Worker]: midStartCommit2IW 0 [4/07/2026 17:15:37; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 0 [4/07/2026 17:15:37; .NET TP Worker]: midStartCommitSuccessTP 0 [4/07/2026 17:15:37; .NET TP Worker]: finishStartCommitIW 0 [4/07/2026 17:15:37; .NET TP Worker]: commit: pendingCommit != nullIW 0 [4/07/2026 17:15:37; .NET TP Worker]: commit: wrote segments file "segments_4"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "segments_3"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.cfs"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.cfe"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.si"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_1.del"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.si"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.cfs"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.cfe"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.si"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.cfs"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.cfe"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.cfs"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.si"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.cfe"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.cfe"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.si"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.cfs"IFD 0 [4/07/2026 17:15:37; .NET TP Worker]: 27 msec to checkpointIW 0 [4/07/2026 17:15:37; .NET TP Worker]: commit: doneIW 0 [4/07/2026 17:15:37; .NET TP Worker]: at close: _5(4.8):C35IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 1 [4/07/2026 17:15:37; .NET TP Worker]: init: load commit "segments_3"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: now checkpoint "_0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1" [5 segments ; isCommit = False]IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: 0 msec to checkpointIW 1 [4/07/2026 17:15:37; .NET TP Worker]: init: create=FalseIW 1 [4/07/2026 17:15:37; .NET TP Worker]: 
dir=SimpleFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.nocfs-qibucayw lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.nocfs-qibucayw
index=_0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 1 [4/07/2026 17:15:37; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'SimpleFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.nocfs-qibucayw lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.nocfs-qibucayw' to version 4.8...IW 1 [4/07/2026 17:15:37; .NET TP Worker]: forceMerge: index now _0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; .NET TP Worker]: now flush at forceMergeTP 1 [4/07/2026 17:15:37; .NET TP Worker]: startDoFlushIW 1 [4/07/2026 17:15:37; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 1 [4/07/2026 17:15:37; .NET TP Worker]:   index before flush _0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1DW 1 [4/07/2026 17:15:37; .NET TP Worker]: startFullFlushDW 1 [4/07/2026 17:15:37; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 1 [4/07/2026 17:15:37; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 1 [4/07/2026 17:15:37; .NET TP Worker]: apply all deletes during flushBD 1 [4/07/2026 17:15:37; .NET TP Worker]: applyDeletes: no deletes; skippingBD 1 [4/07/2026 17:15:37; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 1 [4/07/2026 17:15:37; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.0):C10/1:delGen=1=true, _1(4.0):C10=true, _2(4.0):C10=true, _3(4.0):C5=true, _4(4.0):C1=true}TMP 1 [4/07/2026 17:15:37; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1 segmentsToMerge={_0(4.0):C10/1:delGen=1=true, _1(4.0):C10=true, _2(4.0):C10=true, _3(4.0):C5=true, _4(4.0):C1=true}TMP 1 [4/07/2026 17:15:37; .NET TP Worker]: eligible=[_1(4.0):C10, _2(4.0):C10, _0(4.0):C10/1:delGen=1, _3(4.0):C5, _4(4.0):C1]TMP 1 [4/07/2026 17:15:37; .NET TP Worker]: forceMergeRunning=FalseTMP 1 [4/07/2026 17:15:37; .NET TP Worker]: add final merge=_1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; .NET TP Worker]: add merge to pendingMerges: _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1 [total 1 pending]IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge merging= []IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge info=_1(4.0):C10IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge info=_2(4.0):C10IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge info=_0(4.0):C10/1:delGen=1IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge info=_3(4.0):C5IW 1 [4/07/2026 17:15:37; .NET TP Worker]: registerMerge info=_4(4.0):C1CMS 1 [4/07/2026 17:15:37; .NET TP Worker]: now mergeCMS 1 [4/07/2026 17:15:37; .NET TP Worker]:   index: _0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1CMS 1 [4/07/2026 17:15:37; .NET TP Worker]:   consider merge _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1CMS 1 [4/07/2026 17:15:37; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 1 [4/07/2026 17:15:37; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 1 [4/07/2026 17:15:37; .NET TP Worker]:   no more merges pending; now returnCMS 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]:   merge thread: startTP 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: startMergeInitBD 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merge seg=_5 _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: now merge
  merge=_1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1
  index=_0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merging _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: seg=_1(4.0):C10 no deletesIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: seg=_2(4.0):C10 no deletesIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: seg=_0(4.0):C10/1:delGen=1 delCount=1IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: seg=_3(4.0):C5 no deletesIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: seg=_4(4.0):C1 no deletesSM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5SM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 7 msec to merge stored fields [35 docs]SM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 35 msec to merge postings [35 docs]SM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 28 msec to merge doc values [35 docs]SM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 13 msec to merge norms [35 docs]SM 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 28 msec to merge vectors [35 docs]IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.042 MBTP 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: startCommitMergeIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: commitMerge: _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1 index=_0(4.0):C10/1:delGen=1 _1(4.0):C10 _2(4.0):C10 _3(4.0):C5 _4(4.0):C1TP 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: startCommitMergeDeletesIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: commitMergeDeletes _1(4.0):C10 _2(4.0):C10 _0(4.0):C10/1:delGen=1 _3(4.0):C5 _4(4.0):C1IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: 0 msec to checkpointIW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]: merge time 161 msec for 35 docsCMS 1 [4/07/2026 17:15:37; Lucene Merge Thread #0]:   merge thread: doneIndexUpgrader 1 [4/07/2026 17:15:37; .NET TP Worker]: All segments upgraded to version 4.8IW 1 [4/07/2026 17:15:37; .NET TP Worker]: now flush at close waitForMerges=TrueTP 1 [4/07/2026 17:15:37; .NET TP Worker]: startDoFlushIW 1 [4/07/2026 17:15:37; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 1 [4/07/2026 17:15:37; .NET TP Worker]:   index before flush _5(4.8):C35DW 1 [4/07/2026 17:15:37; .NET TP Worker]: startFullFlushDW 1 [4/07/2026 17:15:37; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 1 [4/07/2026 17:15:37; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 1 [4/07/2026 17:15:37; .NET TP Worker]: apply all deletes during flushBD 1 [4/07/2026 17:15:37; .NET TP Worker]: applyDeletes: no deletes; skippingBD 1 [4/07/2026 17:15:37; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 1 [4/07/2026 17:15:37; .NET TP Worker]: now mergeCMS 1 [4/07/2026 17:15:37; .NET TP Worker]:   index: _5(4.8):C35CMS 1 [4/07/2026 17:15:37; .NET TP Worker]:   no more merges pending; now returnIW 1 [4/07/2026 17:15:37; .NET TP Worker]: waitForMergesIW 1 [4/07/2026 17:15:37; .NET TP Worker]: waitForMerges doneIW 1 [4/07/2026 17:15:37; .NET TP Worker]: now call final commit()IW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: startIW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: enter lockIW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: now prepareIW 1 [4/07/2026 17:15:37; .NET TP Worker]: prepareCommit: flushIW 1 [4/07/2026 17:15:37; .NET TP Worker]:   index before flush _5(4.8):C35TP 1 [4/07/2026 17:15:37; .NET TP Worker]: startDoFlushDW 1 [4/07/2026 17:15:37; .NET TP Worker]: startFullFlushDW 1 [4/07/2026 17:15:37; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 1 [4/07/2026 17:15:37; .NET TP Worker]: apply all deletes during flushBD 1 [4/07/2026 17:15:37; .NET TP Worker]: applyDeletes: no deletes; skippingBD 1 [4/07/2026 17:15:37; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 1 [4/07/2026 17:15:37; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 1 [4/07/2026 17:15:37; .NET TP Worker]: startStartCommitIW 1 [4/07/2026 17:15:37; .NET TP Worker]: StartCommit(): startIW 1 [4/07/2026 17:15:37; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 1 [4/07/2026 17:15:37; .NET TP Worker]: midStartCommitTP 1 [4/07/2026 17:15:37; .NET TP Worker]: midStartCommit2IW 1 [4/07/2026 17:15:37; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 1 [4/07/2026 17:15:37; .NET TP Worker]: midStartCommitSuccessTP 1 [4/07/2026 17:15:37; .NET TP Worker]: finishStartCommitIW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: pendingCommit != nullIW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: wrote segments file "segments_4"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "segments_3"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_Lucene40_0.tim"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.fnm"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.tvd"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_dv.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.tvf"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_nrm.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_Lucene40_0.prx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_Lucene40_0.tip"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_Lucene40_0.frq"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.tvx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_nrm.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.fdx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.si"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0.fdt"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_dv.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_0_1.del"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_Lucene40_0.tim"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_nrm.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.tvx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_Lucene40_0.frq"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_dv.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.fnm"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_nrm.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_Lucene40_0.tip"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_Lucene40_0.prx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.fdx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.tvf"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.fdt"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.si"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1_dv.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_1.tvd"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.si"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.fdt"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.fdx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_dv.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.tvx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.fnm"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_Lucene40_0.tip"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_nrm.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.tvd"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_Lucene40_0.frq"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_Lucene40_0.prx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_nrm.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_Lucene40_0.tim"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2.tvf"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_2_dv.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_nrm.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_Lucene40_0.tip"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_Lucene40_0.tim"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.tvd"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.tvf"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.fdt"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.fnm"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.fdx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_nrm.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.tvx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_Lucene40_0.frq"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_dv.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_dv.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3_Lucene40_0.prx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_3.si"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.fdx"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4_Lucene40_0.frq"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4_nrm.cfs"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4_Lucene40_0.tip"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4_nrm.cfe"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.fnm"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.si"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4.fdt"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: delete "_4_Lucene40_0.tim"IFD 1 [4/07/2026 17:15:37; .NET TP Worker]: 167 msec to checkpointIW 1 [4/07/2026 17:15:37; .NET TP Worker]: commit: doneIW 1 [4/07/2026 17:15:37; .NET TP Worker]: at close: _5(4.8):C35IFD 2 [4/07/2026 17:15:38; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 2 [4/07/2026 17:15:38; .NET TP Worker]: init: load commit "segments_3"IFD 2 [4/07/2026 17:15:38; .NET TP Worker]: now checkpoint "_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1" [5 segments ; isCommit = False]IFD 2 [4/07/2026 17:15:38; .NET TP Worker]: 0 msec to checkpointIW 2 [4/07/2026 17:15:38; .NET TP Worker]: init: create=FalseIW 2 [4/07/2026 17:15:38; .NET TP Worker]: 
dir=SimpleFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\41.nocfs-mpci1sxe lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\41.nocfs-mpci1sxe
index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 2 [4/07/2026 17:15:38; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'SimpleFSDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\41.nocfs-mpci1sxe lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\41.nocfs-mpci1sxe' to version 4.8...IW 2 [4/07/2026 17:15:38; .NET TP Worker]: forceMerge: index now _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:38; .NET TP Worker]: now flush at forceMergeTP 2 [4/07/2026 17:15:38; .NET TP Worker]: startDoFlushIW 2 [4/07/2026 17:15:38; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 2 [4/07/2026 17:15:38; .NET TP Worker]:   index before flush _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1DW 2 [4/07/2026 17:15:38; .NET TP Worker]: startFullFlushDW 2 [4/07/2026 17:15:38; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 2 [4/07/2026 17:15:38; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 2 [4/07/2026 17:15:38; .NET TP Worker]: apply all deletes during flushBD 2 [4/07/2026 17:15:38; .NET TP Worker]: applyDeletes: no deletes; skippingBD 2 [4/07/2026 17:15:38; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 2 [4/07/2026 17:15:38; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.1):C10/1:delGen=1=true, _1(4.1):C10=true, _2(4.1):C10=true, _3(4.1):C5=true, _4(4.1):C1=true}TMP 2 [4/07/2026 17:15:38; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1 segmentsToMerge={_0(4.1):C10/1:delGen=1=true, _1(4.1):C10=true, _2(4.1):C10=true, _3(4.1):C5=true, _4(4.1):C1=true}TMP 2 [4/07/2026 17:15:38; .NET TP Worker]: eligible=[_1(4.1):C10, _2(4.1):C10, _0(4.1):C10/1:delGen=1, _3(4.1):C5, _4(4.1):C1]TMP 2 [4/07/2026 17:15:38; .NET TP Worker]: forceMergeRunning=FalseTMP 2 [4/07/2026 17:15:38; .NET TP Worker]: add final merge=_1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:38; .NET TP Worker]: add merge to pendingMerges: _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1 [total 1 pending]IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge merging= []IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge info=_1(4.1):C10IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge info=_2(4.1):C10IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge info=_0(4.1):C10/1:delGen=1IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge info=_3(4.1):C5IW 2 [4/07/2026 17:15:38; .NET TP Worker]: registerMerge info=_4(4.1):C1CMS 2 [4/07/2026 17:15:38; .NET TP Worker]: now mergeCMS 2 [4/07/2026 17:15:38; .NET TP Worker]:   index: _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1CMS 2 [4/07/2026 17:15:38; .NET TP Worker]:   consider merge _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1CMS 2 [4/07/2026 17:15:38; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 2 [4/07/2026 17:15:38; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 2 [4/07/2026 17:15:38; .NET TP Worker]:   no more merges pending; now returnCMS 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]:   merge thread: startTP 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: startMergeInitBD 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: merge seg=_5 _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: now merge
  merge=_1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
  index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: merging _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: seg=_1(4.1):C10 no deletesIW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: seg=_2(4.1):C10 no deletesIW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: seg=_0(4.1):C10/1:delGen=1 delCount=1IW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: seg=_3(4.1):C5 no deletesIW 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: seg=_4(4.1):C1 no deletesSM 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5SM 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: 7 msec to merge stored fields [35 docs]SM 2 [4/07/2026 17:15:38; Lucene Merge Thread #0]: 26 msec to merge postings [35 docs]SM 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 27 msec to merge doc values [35 docs]SM 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 9 msec to merge norms [35 docs]SM 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 18 msec to merge vectors [35 docs]IW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.035 MBTP 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: startCommitMergeIW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: commitMerge: _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1 index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1TP 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: startCommitMergeDeletesIW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: commitMergeDeletes _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1IW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 0 msec to checkpointIW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge time 123 msec for 35 docsCMS 2 [4/07/2026 17:15:39; Lucene Merge Thread #0]:   merge thread: doneIndexUpgrader 2 [4/07/2026 17:15:39; .NET TP Worker]: All segments upgraded to version 4.8IW 2 [4/07/2026 17:15:39; .NET TP Worker]: now flush at close waitForMerges=TrueTP 2 [4/07/2026 17:15:39; .NET TP Worker]: startDoFlushIW 2 [4/07/2026 17:15:39; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 2 [4/07/2026 17:15:39; .NET TP Worker]:   index before flush _5(4.8):C35DW 2 [4/07/2026 17:15:39; .NET TP Worker]: startFullFlushDW 2 [4/07/2026 17:15:39; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 2 [4/07/2026 17:15:39; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 2 [4/07/2026 17:15:39; .NET TP Worker]: apply all deletes during flushBD 2 [4/07/2026 17:15:39; .NET TP Worker]: applyDeletes: no deletes; skippingBD 2 [4/07/2026 17:15:39; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 2 [4/07/2026 17:15:39; .NET TP Worker]: now mergeCMS 2 [4/07/2026 17:15:39; .NET TP Worker]:   index: _5(4.8):C35CMS 2 [4/07/2026 17:15:39; .NET TP Worker]:   no more merges pending; now returnIW 2 [4/07/2026 17:15:39; .NET TP Worker]: waitForMergesIW 2 [4/07/2026 17:15:39; .NET TP Worker]: waitForMerges doneIW 2 [4/07/2026 17:15:39; .NET TP Worker]: now call final commit()IW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: startIW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: enter lockIW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: now prepareIW 2 [4/07/2026 17:15:39; .NET TP Worker]: prepareCommit: flushIW 2 [4/07/2026 17:15:39; .NET TP Worker]:   index before flush _5(4.8):C35TP 2 [4/07/2026 17:15:39; .NET TP Worker]: startDoFlushDW 2 [4/07/2026 17:15:39; .NET TP Worker]: startFullFlushDW 2 [4/07/2026 17:15:39; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 2 [4/07/2026 17:15:39; .NET TP Worker]: apply all deletes during flushBD 2 [4/07/2026 17:15:39; .NET TP Worker]: applyDeletes: no deletes; skippingBD 2 [4/07/2026 17:15:39; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 2 [4/07/2026 17:15:39; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 2 [4/07/2026 17:15:39; .NET TP Worker]: startStartCommitIW 2 [4/07/2026 17:15:39; .NET TP Worker]: StartCommit(): startIW 2 [4/07/2026 17:15:39; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 2 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommitTP 2 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommit2IW 2 [4/07/2026 17:15:39; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 2 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommitSuccessTP 2 [4/07/2026 17:15:39; .NET TP Worker]: finishStartCommitIW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: pendingCommit != nullIW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: wrote segments file "segments_4"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "segments_3"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.fnm"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_Lucene41_0.pos"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.tvd"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.tvf"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_dv.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_nrm.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_Lucene41_0.pay"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_Lucene41_0.doc"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.tvx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_nrm.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.fdx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.si"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_Lucene41_0.tim"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_Lucene41_0.tip"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.fdt"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_dv.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_1.del"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_nrm.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.tvx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_Lucene41_0.doc"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_Lucene41_0.tim"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_Lucene41_0.tip"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_dv.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.fnm"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_nrm.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_Lucene41_0.pos"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.fdx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.tvf"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_Lucene41_0.pay"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.fdt"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.si"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1_dv.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.tvd"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.si"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_Lucene41_0.pos"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_Lucene41_0.tim"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.fdt"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_Lucene41_0.doc"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_Lucene41_0.tip"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.fdx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.tvx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_dv.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.fnm"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_nrm.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.tvd"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_Lucene41_0.pay"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_nrm.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.tvf"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2_dv.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_nrm.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.tvd"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.tvf"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_Lucene41_0.pay"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.fdt"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.fnm"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.fdx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_nrm.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.tvx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_Lucene41_0.pos"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_Lucene41_0.doc"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_Lucene41_0.tip"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_dv.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_dv.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.si"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3_Lucene41_0.tim"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.fdx"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4_Lucene41_0.doc"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4_nrm.cfs"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4_nrm.cfe"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.fnm"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.si"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.fdt"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4_Lucene41_0.tip"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4_Lucene41_0.tim"IFD 2 [4/07/2026 17:15:39; .NET TP Worker]: 133 msec to checkpointIW 2 [4/07/2026 17:15:39; .NET TP Worker]: commit: doneIW 2 [4/07/2026 17:15:39; .NET TP Worker]: at close: _5(4.8):C35IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 3 [4/07/2026 17:15:39; .NET TP Worker]: init: load commit "segments_3"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: now checkpoint "_0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1" [5 segments ; isCommit = False]IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: 0 msec to checkpointIW 3 [4/07/2026 17:15:39; .NET TP Worker]: init: create=FalseIW 3 [4/07/2026 17:15:39; .NET TP Worker]: 
dir=MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\42.cfs-b2fuvvvc lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\42.cfs-b2fuvvvc
index=_0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 3 [4/07/2026 17:15:39; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\42.cfs-b2fuvvvc lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\42.cfs-b2fuvvvc' to version 4.8...IW 3 [4/07/2026 17:15:39; .NET TP Worker]: forceMerge: index now _0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; .NET TP Worker]: now flush at forceMergeTP 3 [4/07/2026 17:15:39; .NET TP Worker]: startDoFlushIW 3 [4/07/2026 17:15:39; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 3 [4/07/2026 17:15:39; .NET TP Worker]:   index before flush _0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1DW 3 [4/07/2026 17:15:39; .NET TP Worker]: startFullFlushDW 3 [4/07/2026 17:15:39; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 3 [4/07/2026 17:15:39; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 3 [4/07/2026 17:15:39; .NET TP Worker]: apply all deletes during flushBD 3 [4/07/2026 17:15:39; .NET TP Worker]: applyDeletes: no deletes; skippingBD 3 [4/07/2026 17:15:39; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 3 [4/07/2026 17:15:39; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.2):c10/1:delGen=1=true, _1(4.2):c10=true, _2(4.2):c10=true, _3(4.2):c5=true, _4(4.2):c1=true}TMP 3 [4/07/2026 17:15:39; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1 segmentsToMerge={_0(4.2):c10/1:delGen=1=true, _1(4.2):c10=true, _2(4.2):c10=true, _3(4.2):c5=true, _4(4.2):c1=true}TMP 3 [4/07/2026 17:15:39; .NET TP Worker]: eligible=[_1(4.2):c10, _2(4.2):c10, _0(4.2):c10/1:delGen=1, _3(4.2):c5, _4(4.2):c1]TMP 3 [4/07/2026 17:15:39; .NET TP Worker]: forceMergeRunning=FalseTMP 3 [4/07/2026 17:15:39; .NET TP Worker]: add final merge=_1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; .NET TP Worker]: add merge to pendingMerges: _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1 [total 1 pending]IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge merging= []IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge info=_1(4.2):c10IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge info=_2(4.2):c10IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge info=_0(4.2):c10/1:delGen=1IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge info=_3(4.2):c5IW 3 [4/07/2026 17:15:39; .NET TP Worker]: registerMerge info=_4(4.2):c1CMS 3 [4/07/2026 17:15:39; .NET TP Worker]: now mergeCMS 3 [4/07/2026 17:15:39; .NET TP Worker]:   index: _0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1CMS 3 [4/07/2026 17:15:39; .NET TP Worker]:   consider merge _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1CMS 3 [4/07/2026 17:15:39; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 3 [4/07/2026 17:15:39; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 3 [4/07/2026 17:15:39; .NET TP Worker]:   no more merges pending; now returnCMS 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]:   merge thread: startTP 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: startMergeInitBD 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge seg=_5 _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: now merge
  merge=_1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1
  index=_0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merging _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: seg=_1(4.2):c10 no deletesIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: seg=_2(4.2):c10 no deletesIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: seg=_0(4.2):c10/1:delGen=1 delCount=1IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: seg=_3(4.2):c5 no deletesIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: seg=_4(4.2):c1 no deletesSM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5SM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 6 msec to merge stored fields [35 docs]SM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 20 msec to merge postings [35 docs]SM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 16 msec to merge doc values [35 docs]SM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 10 msec to merge norms [35 docs]SM 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 27 msec to merge vectors [35 docs]IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merged segment size=0.016 MB vs estimate=0.029 MBTP 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: startCommitMergeIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: commitMerge: _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1 index=_0(4.2):c10/1:delGen=1 _1(4.2):c10 _2(4.2):c10 _3(4.2):c5 _4(4.2):c1TP 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: startCommitMergeDeletesIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: commitMergeDeletes _1(4.2):c10 _2(4.2):c10 _0(4.2):c10/1:delGen=1 _3(4.2):c5 _4(4.2):c1IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: 0 msec to checkpointIW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]: merge time 107 msec for 35 docsCMS 3 [4/07/2026 17:15:39; Lucene Merge Thread #0]:   merge thread: doneIndexUpgrader 3 [4/07/2026 17:15:39; .NET TP Worker]: All segments upgraded to version 4.8IW 3 [4/07/2026 17:15:39; .NET TP Worker]: now flush at close waitForMerges=TrueTP 3 [4/07/2026 17:15:39; .NET TP Worker]: startDoFlushIW 3 [4/07/2026 17:15:39; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 3 [4/07/2026 17:15:39; .NET TP Worker]:   index before flush _5(4.8):C35DW 3 [4/07/2026 17:15:39; .NET TP Worker]: startFullFlushDW 3 [4/07/2026 17:15:39; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 3 [4/07/2026 17:15:39; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 3 [4/07/2026 17:15:39; .NET TP Worker]: apply all deletes during flushBD 3 [4/07/2026 17:15:39; .NET TP Worker]: applyDeletes: no deletes; skippingBD 3 [4/07/2026 17:15:39; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 3 [4/07/2026 17:15:39; .NET TP Worker]: now mergeCMS 3 [4/07/2026 17:15:39; .NET TP Worker]:   index: _5(4.8):C35CMS 3 [4/07/2026 17:15:39; .NET TP Worker]:   no more merges pending; now returnIW 3 [4/07/2026 17:15:39; .NET TP Worker]: waitForMergesIW 3 [4/07/2026 17:15:39; .NET TP Worker]: waitForMerges doneIW 3 [4/07/2026 17:15:39; .NET TP Worker]: now call final commit()IW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: startIW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: enter lockIW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: now prepareIW 3 [4/07/2026 17:15:39; .NET TP Worker]: prepareCommit: flushIW 3 [4/07/2026 17:15:39; .NET TP Worker]:   index before flush _5(4.8):C35TP 3 [4/07/2026 17:15:39; .NET TP Worker]: startDoFlushDW 3 [4/07/2026 17:15:39; .NET TP Worker]: startFullFlushDW 3 [4/07/2026 17:15:39; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 3 [4/07/2026 17:15:39; .NET TP Worker]: apply all deletes during flushBD 3 [4/07/2026 17:15:39; .NET TP Worker]: applyDeletes: no deletes; skippingBD 3 [4/07/2026 17:15:39; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 3 [4/07/2026 17:15:39; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 3 [4/07/2026 17:15:39; .NET TP Worker]: startStartCommitIW 3 [4/07/2026 17:15:39; .NET TP Worker]: StartCommit(): startIW 3 [4/07/2026 17:15:39; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 3 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommitTP 3 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommit2IW 3 [4/07/2026 17:15:39; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 3 [4/07/2026 17:15:39; .NET TP Worker]: midStartCommitSuccessTP 3 [4/07/2026 17:15:39; .NET TP Worker]: finishStartCommitIW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: pendingCommit != nullIW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: wrote segments file "segments_4"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "segments_3"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.cfs"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.cfe"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0.si"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_0_1.del"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.si"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.cfs"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_1.cfe"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.si"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.cfs"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_2.cfe"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.cfs"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.si"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_3.cfe"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.cfe"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.si"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: delete "_4.cfs"IFD 3 [4/07/2026 17:15:39; .NET TP Worker]: 38 msec to checkpointIW 3 [4/07/2026 17:15:39; .NET TP Worker]: commit: doneIW 3 [4/07/2026 17:15:39; .NET TP Worker]: at close: _5(4.8):C35IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 4 [4/07/2026 17:15:41; .NET TP Worker]: init: load commit "segments_3"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: now checkpoint "_0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1" [5 segments ; isCommit = False]IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: 0 msec to checkpointIW 4 [4/07/2026 17:15:41; .NET TP Worker]: init: create=FalseIW 4 [4/07/2026 17:15:41; .NET TP Worker]: 
dir=MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\45.nocfs-lgbvtwjr lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\45.nocfs-lgbvtwjr
index=_0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 4 [4/07/2026 17:15:41; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\45.nocfs-lgbvtwjr lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\45.nocfs-lgbvtwjr' to version 4.8...IW 4 [4/07/2026 17:15:41; .NET TP Worker]: forceMerge: index now _0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; .NET TP Worker]: now flush at forceMergeTP 4 [4/07/2026 17:15:41; .NET TP Worker]: startDoFlushIW 4 [4/07/2026 17:15:41; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 4 [4/07/2026 17:15:41; .NET TP Worker]:   index before flush _0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1DW 4 [4/07/2026 17:15:41; .NET TP Worker]: startFullFlushDW 4 [4/07/2026 17:15:41; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 4 [4/07/2026 17:15:41; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 4 [4/07/2026 17:15:41; .NET TP Worker]: apply all deletes during flushBD 4 [4/07/2026 17:15:41; .NET TP Worker]: applyDeletes: no deletes; skippingBD 4 [4/07/2026 17:15:41; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 4 [4/07/2026 17:15:41; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.5):C10/1:delGen=1=true, _1(4.5):C10=true, _2(4.5):C10=true, _3(4.5):C5=true, _4(4.5):C1=true}TMP 4 [4/07/2026 17:15:41; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1 segmentsToMerge={_0(4.5):C10/1:delGen=1=true, _1(4.5):C10=true, _2(4.5):C10=true, _3(4.5):C5=true, _4(4.5):C1=true}TMP 4 [4/07/2026 17:15:41; .NET TP Worker]: eligible=[_1(4.5):C10, _2(4.5):C10, _0(4.5):C10/1:delGen=1, _3(4.5):C5, _4(4.5):C1]TMP 4 [4/07/2026 17:15:41; .NET TP Worker]: forceMergeRunning=FalseTMP 4 [4/07/2026 17:15:41; .NET TP Worker]: add final merge=_1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; .NET TP Worker]: add merge to pendingMerges: _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1 [total 1 pending]IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge merging= []IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge info=_1(4.5):C10IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge info=_2(4.5):C10IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge info=_0(4.5):C10/1:delGen=1IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge info=_3(4.5):C5IW 4 [4/07/2026 17:15:41; .NET TP Worker]: registerMerge info=_4(4.5):C1CMS 4 [4/07/2026 17:15:41; .NET TP Worker]: now mergeCMS 4 [4/07/2026 17:15:41; .NET TP Worker]:   index: _0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1CMS 4 [4/07/2026 17:15:41; .NET TP Worker]:   consider merge _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1CMS 4 [4/07/2026 17:15:41; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 4 [4/07/2026 17:15:41; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 4 [4/07/2026 17:15:41; .NET TP Worker]:   no more merges pending; now returnCMS 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]:   merge thread: startTP 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: startMergeInitBD 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merge seg=_5 _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: now merge
  merge=_1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1
  index=_0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merging _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: seg=_1(4.5):C10 no deletesIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: seg=_2(4.5):C10 no deletesIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: seg=_0(4.5):C10/1:delGen=1 delCount=1IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: seg=_3(4.5):C5 no deletesIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: seg=_4(4.5):C1 no deletesSM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5SM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 6 msec to merge stored fields [35 docs]SM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 22 msec to merge postings [35 docs]SM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 16 msec to merge doc values [35 docs]SM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 7 msec to merge norms [35 docs]SM 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 22 msec to merge vectors [35 docs]IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merged segment size=0.016 MB vs estimate=0.026 MBTP 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: startCommitMergeIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: commitMerge: _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1 index=_0(4.5):C10/1:delGen=1 _1(4.5):C10 _2(4.5):C10 _3(4.5):C5 _4(4.5):C1TP 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: startCommitMergeDeletesIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: commitMergeDeletes _1(4.5):C10 _2(4.5):C10 _0(4.5):C10/1:delGen=1 _3(4.5):C5 _4(4.5):C1IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: 0 msec to checkpointIW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]: merge time 109 msec for 35 docsIndexUpgrader 4 [4/07/2026 17:15:41; .NET TP Worker]: All segments upgraded to version 4.8CMS 4 [4/07/2026 17:15:41; Lucene Merge Thread #0]:   merge thread: doneIW 4 [4/07/2026 17:15:41; .NET TP Worker]: now flush at close waitForMerges=TrueTP 4 [4/07/2026 17:15:41; .NET TP Worker]: startDoFlushIW 4 [4/07/2026 17:15:41; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 4 [4/07/2026 17:15:41; .NET TP Worker]:   index before flush _5(4.8):C35DW 4 [4/07/2026 17:15:41; .NET TP Worker]: startFullFlushDW 4 [4/07/2026 17:15:41; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 4 [4/07/2026 17:15:41; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 4 [4/07/2026 17:15:41; .NET TP Worker]: apply all deletes during flushBD 4 [4/07/2026 17:15:41; .NET TP Worker]: applyDeletes: no deletes; skippingBD 4 [4/07/2026 17:15:41; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 4 [4/07/2026 17:15:41; .NET TP Worker]: now mergeCMS 4 [4/07/2026 17:15:41; .NET TP Worker]:   index: _5(4.8):C35CMS 4 [4/07/2026 17:15:41; .NET TP Worker]:   no more merges pending; now returnIW 4 [4/07/2026 17:15:41; .NET TP Worker]: waitForMergesIW 4 [4/07/2026 17:15:41; .NET TP Worker]: waitForMerges doneIW 4 [4/07/2026 17:15:41; .NET TP Worker]: now call final commit()IW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: startIW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: enter lockIW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: now prepareIW 4 [4/07/2026 17:15:41; .NET TP Worker]: prepareCommit: flushIW 4 [4/07/2026 17:15:41; .NET TP Worker]:   index before flush _5(4.8):C35TP 4 [4/07/2026 17:15:41; .NET TP Worker]: startDoFlushDW 4 [4/07/2026 17:15:41; .NET TP Worker]: startFullFlushDW 4 [4/07/2026 17:15:41; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 4 [4/07/2026 17:15:41; .NET TP Worker]: apply all deletes during flushBD 4 [4/07/2026 17:15:41; .NET TP Worker]: applyDeletes: no deletes; skippingBD 4 [4/07/2026 17:15:41; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 4 [4/07/2026 17:15:41; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 4 [4/07/2026 17:15:41; .NET TP Worker]: startStartCommitIW 4 [4/07/2026 17:15:41; .NET TP Worker]: StartCommit(): startIW 4 [4/07/2026 17:15:41; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 4 [4/07/2026 17:15:41; .NET TP Worker]: midStartCommitTP 4 [4/07/2026 17:15:41; .NET TP Worker]: midStartCommit2IW 4 [4/07/2026 17:15:41; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 4 [4/07/2026 17:15:41; .NET TP Worker]: midStartCommitSuccessTP 4 [4/07/2026 17:15:41; .NET TP Worker]: finishStartCommitIW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: pendingCommit != nullIW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: wrote segments file "segments_4"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "segments_3"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.fnm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene41_0.pos"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.tvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.nvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene41_0.pay"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene41_0.doc"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene45_0.dvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.tvx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.nvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.fdx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.si"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene45_0.dvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene41_0.tim"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_Lucene41_0.tip"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0.fdt"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_0_1.del"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.nvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.tvx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene41_0.doc"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene41_0.tim"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.nvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene41_0.tip"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.fnm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene41_0.pos"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.fdx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene45_0.dvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene41_0.pay"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.fdt"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.si"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1.tvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_1_Lucene45_0.dvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.si"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene41_0.pos"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene41_0.tim"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.fdt"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene41_0.doc"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene41_0.tip"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.fdx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.tvx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.fnm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.nvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene45_0.dvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.tvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene41_0.pay"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2.nvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_2_Lucene45_0.dvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.tvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene45_0.dvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene41_0.pay"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene45_0.dvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.fdt"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.fnm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.fdx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.tvx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.nvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene41_0.pos"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene41_0.doc"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene41_0.tip"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.si"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3.nvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_3_Lucene41_0.tim"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.fdx"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.nvd"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4_Lucene41_0.doc"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.fnm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.si"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.fdt"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4_Lucene41_0.tip"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4.nvm"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: delete "_4_Lucene41_0.tim"IFD 4 [4/07/2026 17:15:41; .NET TP Worker]: 190 msec to checkpointIW 4 [4/07/2026 17:15:41; .NET TP Worker]: commit: doneIW 4 [4/07/2026 17:15:41; .NET TP Worker]: at close: _5(4.8):C35IFD 5 [4/07/2026 17:15:43; .NET TP Worker]: init: current segments file is "segments_1"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicyIFD 5 [4/07/2026 17:15:43; .NET TP Worker]: init: load commit "segments_1"IFD 5 [4/07/2026 17:15:43; .NET TP Worker]: now checkpoint "_4(4.0):C35" [1 segments ; isCommit = False]IFD 5 [4/07/2026 17:15:43; .NET TP Worker]: 0 msec to checkpointIW 5 [4/07/2026 17:15:43; .NET TP Worker]: init: create=FalseIW 5 [4/07/2026 17:15:43; .NET TP Worker]: 
dir=MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.optimized.nocfs-o13wydps lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.optimized.nocfs-o13wydps
index=_4(4.0):C35
version=4.8.0
matchVersion=LUCENE_CURRENT
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 5 [4/07/2026 17:15:43; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.optimized.nocfs-o13wydps lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\40.optimized.nocfs-o13wydps' to version 4.8...IW 5 [4/07/2026 17:15:43; .NET TP Worker]: forceMerge: index now _4(4.0):C35IW 5 [4/07/2026 17:15:43; .NET TP Worker]: now flush at forceMergeTP 5 [4/07/2026 17:15:43; .NET TP Worker]: startDoFlushIW 5 [4/07/2026 17:15:43; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 5 [4/07/2026 17:15:43; .NET TP Worker]:   index before flush _4(4.0):C35DW 5 [4/07/2026 17:15:43; .NET TP Worker]: startFullFlushDW 5 [4/07/2026 17:15:43; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 5 [4/07/2026 17:15:43; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 5 [4/07/2026 17:15:43; .NET TP Worker]: apply all deletes during flushBD 5 [4/07/2026 17:15:43; .NET TP Worker]: applyDeletes: no deletes; skippingBD 5 [4/07/2026 17:15:43; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0UPGMP 5 [4/07/2026 17:15:43; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_4(4.0):C35=true}TMP 5 [4/07/2026 17:15:43; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_4(4.0):C35 segmentsToMerge={_4(4.0):C35=true}TMP 5 [4/07/2026 17:15:43; .NET TP Worker]: already mergedUPGMP 5 [4/07/2026 17:15:43; .NET TP Worker]: findForcedMerges: TieredMergePolicy does not want to merge all old segments, merge remaining ones into new segment: {_4(4.0):C35=true}IW 5 [4/07/2026 17:15:43; .NET TP Worker]: add merge to pendingMerges: _4(4.0):C35 [total 1 pending]IW 5 [4/07/2026 17:15:43; .NET TP Worker]: registerMerge merging= []IW 5 [4/07/2026 17:15:43; .NET TP Worker]: registerMerge info=_4(4.0):C35CMS 5 [4/07/2026 17:15:43; .NET TP Worker]: now mergeCMS 5 [4/07/2026 17:15:43; .NET TP Worker]:   index: _4(4.0):C35CMS 5 [4/07/2026 17:15:43; .NET TP Worker]:   consider merge _4(4.0):C35CMS 5 [4/07/2026 17:15:43; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]CMS 5 [4/07/2026 17:15:43; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3CMS 5 [4/07/2026 17:15:43; .NET TP Worker]:   no more merges pending; now returnCMS 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]:   merge thread: startTP 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: startMergeInitBD 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: applyDeletes: no deletes; skippingBD 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merge seg=_5 _4(4.0):C35IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: now merge
  merge=_4(4.0):C35
  index=_4(4.0):C35IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merging _4(4.0):C35IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: seg=_4(4.0):C35 no deletesSM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merge store matchedCount=1 vs 1SM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 11 msec to merge stored fields [35 docs]SM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 35 msec to merge postings [35 docs]SM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 16 msec to merge doc values [35 docs]SM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 5 msec to merge norms [35 docs]SM 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 17 msec to merge vectors [35 docs]IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqsIW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.030 MBTP 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: startCommitMergeIW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: commitMerge: _4(4.0):C35 index=_4(4.0):C35TP 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: startCommitMergeDeletesIW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: commitMergeDeletes _4(4.0):C35IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: no new deletes or field updates since merge startedIFD 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]IFD 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: 0 msec to checkpointIW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35UPGMP 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}IW 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]: merge time 105 msec for 35 docsCMS 5 [4/07/2026 17:15:43; Lucene Merge Thread #0]:   merge thread: doneIndexUpgrader 5 [4/07/2026 17:15:43; .NET TP Worker]: All segments upgraded to version 4.8IW 5 [4/07/2026 17:15:43; .NET TP Worker]: now flush at close waitForMerges=TrueTP 5 [4/07/2026 17:15:43; .NET TP Worker]: startDoFlushIW 5 [4/07/2026 17:15:43; .NET TP Worker]:   start flush: applyAllDeletes=TrueIW 5 [4/07/2026 17:15:43; .NET TP Worker]:   index before flush _5(4.8):C35DW 5 [4/07/2026 17:15:43; .NET TP Worker]: startFullFlushDW 5 [4/07/2026 17:15:43; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseDW 5 [4/07/2026 17:15:43; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueIW 5 [4/07/2026 17:15:43; .NET TP Worker]: apply all deletes during flushBD 5 [4/07/2026 17:15:43; .NET TP Worker]: applyDeletes: no deletes; skippingBD 5 [4/07/2026 17:15:43; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0CMS 5 [4/07/2026 17:15:43; .NET TP Worker]: now mergeCMS 5 [4/07/2026 17:15:43; .NET TP Worker]:   index: _5(4.8):C35CMS 5 [4/07/2026 17:15:43; .NET TP Worker]:   no more merges pending; now returnIW 5 [4/07/2026 17:15:43; .NET TP Worker]: waitForMergesIW 5 [4/07/2026 17:15:43; .NET TP Worker]: waitForMerges doneIW 5 [4/07/2026 17:15:43; .NET TP Worker]: now call final commit()IW 5 [4/07/2026 17:15:43; .NET TP Worker]: commit: startIW 5 [4/07/2026 17:15:43; .NET TP Worker]: commit: enter lockIW 5 [4/07/2026 17:15:43; .NET TP Worker]: commit: now prepareIW 5 [4/07/2026 17:15:43; .NET TP Worker]: prepareCommit: flushIW 5 [4/07/2026 17:15:43; .NET TP Worker]:   index before flush _5(4.8):C35TP 5 [4/07/2026 17:15:43; .NET TP Worker]: startDoFlushDW 5 [4/07/2026 17:15:43; .NET TP Worker]: startFullFlushDW 5 [4/07/2026 17:15:43; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: FalseIW 5 [4/07/2026 17:15:43; .NET TP Worker]: apply all deletes during flushBD 5 [4/07/2026 17:15:43; .NET TP Worker]: applyDeletes: no deletes; skippingBD 5 [4/07/2026 17:15:43; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0DW 5 [4/07/2026 17:15:43; .NET TP Worker]: .NET TP Worker finishFullFlush success=TrueTP 5 [4/07/2026 17:15:43; .NET TP Worker]: startStartCommitIW 5 [4/07/2026 17:15:43; .NET TP Worker]: StartCommit(): startIW 5 [4/07/2026 17:15:43; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2TP 5 [4/07/2026 17:15:43; .NET TP Worker]: midStartCommitTP 5 [4/07/2026 17:15:43; .NET TP Worker]: midStartCommit2IW 5 [4/07/2026 17:15:44; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]TP 5 [4/07/2026 17:15:44; .NET TP Worker]: midStartCommitSuccessTP 5 [4/07/2026 17:15:44; .NET TP Worker]: finishStartCommitIW 5 [4/07/2026 17:15:44; .NET TP Worker]: commit: pendingCommit != nullIW 5 [4/07/2026 17:15:44; .NET TP Worker]: commit: wrote segments file "segments_2"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: deleteCommits: now decRef commit "segments_1"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "segments_1"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.tvx"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_Lucene40_0.prx"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_nrm.cfe"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.fnm"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.si"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.fdt"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.fdx"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.tvd"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_dv.cfs"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4.tvf"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_nrm.cfs"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_dv.cfe"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_Lucene40_0.frq"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_Lucene40_0.tip"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: delete "_4_Lucene40_0.tim"IFD 5 [4/07/2026 17:15:44; .NET TP Worker]: 41 msec to checkpointIW 5 [4/07/2026 17:15:44; .NET TP Worker]: commit: doneIW 5 [4/07/2026 17:15:44; .NET TP Worker]: at close: _5(4.8):C35
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicy
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: init: load commit "segments_3"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: now checkpoint "_0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1" [5 segments ; isCommit = False]
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: 0 msec to checkpoint
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: init: create=False
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: 
dir=MockDirectoryWrapper(RAMDirectory@2462968 lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)
index=_0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
version=4.8.0
matchVersion=LUCENE_48
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 6 [4/07/2026 17:15:56; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MockDirectoryWrapper(RAMDirectory@2462968 lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)' to version 4.8...
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: forceMerge: index now _0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: now flush at forceMerge
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
IW 6 [4/07/2026 17:15:56; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 6 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
UPGMP 6 [4/07/2026 17:15:56; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.1):c10/1:delGen=1=true, _1(4.1):c10=true, _2(4.1):c10=true, _3(4.1):c5=true, _4(4.1):c1=true}
TMP 6 [4/07/2026 17:15:56; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1 segmentsToMerge={_0(4.1):c10/1:delGen=1=true, _1(4.1):c10=true, _2(4.1):c10=true, _3(4.1):c5=true, _4(4.1):c1=true}
TMP 6 [4/07/2026 17:15:56; .NET TP Worker]: eligible=[_1(4.1):c10, _2(4.1):c10, _0(4.1):c10/1:delGen=1, _3(4.1):c5, _4(4.1):c1]
TMP 6 [4/07/2026 17:15:56; .NET TP Worker]: forceMergeRunning=False
TMP 6 [4/07/2026 17:15:56; .NET TP Worker]: add final merge=_1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: add merge to pendingMerges: _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1 [total 1 pending]
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge merging= []
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_1(4.1):c10
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_2(4.1):c10
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_0(4.1):c10/1:delGen=1
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_3(4.1):c5
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_4(4.1):c1
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]: now merge
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:   index: _0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:   consider merge _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:   no more merges pending; now return
CMS 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]:   merge thread: start
TP 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startMergeInit
BD 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: applyDeletes: no deletes; skipping
BD 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge seg=_5 _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: now merge
  merge=_1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
  index=_0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merging _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_1(4.1):c10 no deletes
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_2(4.1):c10 no deletes
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_0(4.1):c10/1:delGen=1 delCount=1
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_3(4.1):c5 no deletes
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_4(4.1):c1 no deletes
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 0 msec to merge stored fields [35 docs]
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 2 msec to merge postings [35 docs]
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 7 msec to merge doc values [35 docs]
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 0 msec to merge norms [35 docs]
SM 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 7 msec to merge vectors [35 docs]
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqs
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.037 MB
TP 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startCommitMerge
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: commitMerge: _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1 index=_0(4.1):c10/1:delGen=1 _1(4.1):c10 _2(4.1):c10 _3(4.1):c5 _4(4.1):c1
TP 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startCommitMergeDeletes
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: commitMergeDeletes _1(4.1):c10 _2(4.1):c10 _0(4.1):c10/1:delGen=1 _3(4.1):c5 _4(4.1):c1
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: no new deletes or field updates since merge started
IFD 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]
IFD 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 0 msec to checkpoint
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35
UPGMP 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}
IW 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge time 79 msec for 35 docs
CMS 6 [4/07/2026 17:15:56; Lucene Merge Thread #0]:   merge thread: done
IndexUpgrader 6 [4/07/2026 17:15:56; .NET TP Worker]: All segments upgraded to version 4.8
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: now flush at close waitForMerges=True
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
IW 6 [4/07/2026 17:15:56; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 6 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _5(4.8):C35
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]: now merge
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:   index: _5(4.8):C35
CMS 6 [4/07/2026 17:15:56; .NET TP Worker]:   no more merges pending; now return
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: waitForMerges
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: waitForMerges done
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: now call final commit()
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: start
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: enter lock
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: now prepare
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: prepareCommit: flush
IW 6 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _5(4.8):C35
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 6 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
DW 6 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: startStartCommit
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: StartCommit(): start
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommit
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommit2
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommitSuccess
TP 6 [4/07/2026 17:15:56; .NET TP Worker]: finishStartCommit
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: pendingCommit != null
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: wrote segments file "segments_4"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "segments_3"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.cfs"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.cfe"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.si"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_1.del"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.si"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.cfs"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.cfe"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.si"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.cfs"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.cfe"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.cfs"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.si"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.cfe"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.cfe"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.si"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.cfs"
IFD 6 [4/07/2026 17:15:56; .NET TP Worker]: 0 msec to checkpoint
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: commit: done
IW 6 [4/07/2026 17:15:56; .NET TP Worker]: at close: _5(4.8):C35
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: init: current segments file is "segments_3"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicy
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: init: load commit "segments_3"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: now checkpoint "_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1" [5 segments ; isCommit = False]
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: 0 msec to checkpoint
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: init: create=False
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: 
dir=MockDirectoryWrapper(RAMDirectory@4fd5bd lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)
index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
version=4.8.0
matchVersion=LUCENE_48
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 7 [4/07/2026 17:15:56; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MockDirectoryWrapper(RAMDirectory@4fd5bd lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)' to version 4.8...
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: forceMerge: index now _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: now flush at forceMerge
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
IW 7 [4/07/2026 17:15:56; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 7 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
UPGMP 7 [4/07/2026 17:15:56; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_0(4.1):C10/1:delGen=1=true, _1(4.1):C10=true, _2(4.1):C10=true, _3(4.1):C5=true, _4(4.1):C1=true}
TMP 7 [4/07/2026 17:15:56; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1 segmentsToMerge={_0(4.1):C10/1:delGen=1=true, _1(4.1):C10=true, _2(4.1):C10=true, _3(4.1):C5=true, _4(4.1):C1=true}
TMP 7 [4/07/2026 17:15:56; .NET TP Worker]: eligible=[_1(4.1):C10, _2(4.1):C10, _0(4.1):C10/1:delGen=1, _3(4.1):C5, _4(4.1):C1]
TMP 7 [4/07/2026 17:15:56; .NET TP Worker]: forceMergeRunning=False
TMP 7 [4/07/2026 17:15:56; .NET TP Worker]: add final merge=_1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: add merge to pendingMerges: _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1 [total 1 pending]
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge merging= []
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_1(4.1):C10
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_2(4.1):C10
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_0(4.1):C10/1:delGen=1
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_3(4.1):C5
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: registerMerge info=_4(4.1):C1
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]: now merge
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:   index: _0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:   consider merge _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3
CMS 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]:   merge thread: start
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:   no more merges pending; now return
TP 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startMergeInit
BD 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: applyDeletes: no deletes; skipping
BD 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge seg=_5 _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: now merge
  merge=_1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
  index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merging _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_1(4.1):C10 no deletes
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_2(4.1):C10 no deletes
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_0(4.1):C10/1:delGen=1 delCount=1
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_3(4.1):C5 no deletes
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: seg=_4(4.1):C1 no deletes
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge store matchedCount=5 vs 5
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 1 msec to merge stored fields [35 docs]
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 14 msec to merge postings [35 docs]
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 8 msec to merge doc values [35 docs]
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 0 msec to merge norms [35 docs]
SM 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 5 msec to merge vectors [35 docs]
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqs
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.035 MB
TP 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startCommitMerge
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: commitMerge: _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1 index=_0(4.1):C10/1:delGen=1 _1(4.1):C10 _2(4.1):C10 _3(4.1):C5 _4(4.1):C1
TP 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: startCommitMergeDeletes
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: commitMergeDeletes _1(4.1):C10 _2(4.1):C10 _0(4.1):C10/1:delGen=1 _3(4.1):C5 _4(4.1):C1
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: no new deletes or field updates since merge started
IFD 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = False]
IFD 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: 0 msec to checkpoint
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: after commitMerge: _5(4.8):C35
UPGMP 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}
IW 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]: merge time 36 msec for 35 docs
IndexUpgrader 7 [4/07/2026 17:15:56; .NET TP Worker]: All segments upgraded to version 4.8
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: now flush at close waitForMerges=True
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
IW 7 [4/07/2026 17:15:56; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 7 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _5(4.8):C35
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
CMS 7 [4/07/2026 17:15:56; Lucene Merge Thread #0]:   merge thread: done
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]: now merge
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:   index: _5(4.8):C35
CMS 7 [4/07/2026 17:15:56; .NET TP Worker]:   no more merges pending; now return
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: waitForMerges
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: waitForMerges done
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: now call final commit()
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: start
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: enter lock
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: now prepare
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: prepareCommit: flush
IW 7 [4/07/2026 17:15:56; .NET TP Worker]:   index before flush _5(4.8):C35
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: startDoFlush
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: startFullFlush
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: apply all deletes during flush
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 7 [4/07/2026 17:15:56; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
DW 7 [4/07/2026 17:15:56; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: startStartCommit
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: StartCommit(): start
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: startCommit index=_5(4.8):C35 changeCount=2
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommit
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommit2
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: done all syncs: [_5.fdx, _5.fdt, _5_Lucene41_0.doc, _5_Lucene41_0.pos, _5_Lucene41_0.pay, _5_Lucene41_0.tim, _5_Lucene41_0.tip, _5_Lucene45_0.dvd, _5_Lucene45_0.dvm, _5.nvd, _5.nvm, _5.tvx, _5.tvd, _5.fnm, _5.si]
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: midStartCommitSuccess
TP 7 [4/07/2026 17:15:56; .NET TP Worker]: finishStartCommit
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: pendingCommit != null
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: wrote segments file "segments_4"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: now checkpoint "_5(4.8):C35" [1 segments ; isCommit = True]
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: deleteCommits: now decRef commit "segments_3"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "segments_3"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.fnm"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_Lucene41_0.pos"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.tvd"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.tvf"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_dv.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_nrm.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_Lucene41_0.pay"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_Lucene41_0.doc"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.tvx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_nrm.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.fdx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.si"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_Lucene41_0.tim"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_Lucene41_0.tip"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0.fdt"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_dv.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_0_1.del"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_nrm.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.tvx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_Lucene41_0.doc"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_Lucene41_0.tim"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_Lucene41_0.tip"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_dv.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.fnm"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_nrm.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_Lucene41_0.pos"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.fdx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.tvf"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_Lucene41_0.pay"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.fdt"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.si"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1_dv.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_1.tvd"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.si"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_Lucene41_0.pos"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_Lucene41_0.tim"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.fdt"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_Lucene41_0.doc"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_Lucene41_0.tip"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.fdx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.tvx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_dv.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.fnm"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_nrm.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.tvd"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_Lucene41_0.pay"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_nrm.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2.tvf"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_2_dv.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_nrm.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.tvd"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.tvf"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_Lucene41_0.pay"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.fdt"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.fnm"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.fdx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_nrm.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.tvx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_Lucene41_0.pos"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_Lucene41_0.doc"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_Lucene41_0.tip"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_dv.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_dv.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3.si"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_3_Lucene41_0.tim"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.fdx"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4_Lucene41_0.doc"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4_nrm.cfs"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4_nrm.cfe"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.fnm"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.si"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4.fdt"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4_Lucene41_0.tip"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: delete "_4_Lucene41_0.tim"
IFD 7 [4/07/2026 17:15:56; .NET TP Worker]: 2 msec to checkpoint
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: commit: done
IW 7 [4/07/2026 17:15:56; .NET TP Worker]: at close: _5(4.8):C35
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: init: current segments file is "segments_2"; deletionPolicy=Lucene.Net.Index.KeepOnlyLastCommitDeletionPolicy
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: init: load commit "segments_2"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: now checkpoint "_4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5" [4 segments ; isCommit = False]
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: 0 msec to checkpoint
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: init: create=False
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: 
dir=MockDirectoryWrapper(RAMDirectory@22b28f4 lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)
index=_4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
version=4.8.0
matchVersion=LUCENE_48
analyzer=null
ramBufferSizeMB=16
maxBufferedDocs=-1
maxBufferedDeleteTerms=-1
mergedSegmentWarmer=
readerTermsIndexDivisor=1
termIndexInterval=32
delPolicy=KeepOnlyLastCommitDeletionPolicy
commit=null
openMode=CREATE_OR_APPEND
similarity=DefaultSimilarity
mergeScheduler=ConcurrentMergeScheduler: maxThreadCount=1, maxMergeCount=2, mergeThreadPriority=-1
default WRITE_LOCK_TIMEOUT=1000
writeLockTimeout=1000
codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453))
infoStream=TextWriterInfoStream
mergePolicy=[UpgradeIndexMergePolicy->[TieredMergePolicy: maxMergeAtOnce=10, maxMergeAtOnceExplicit=30, maxMergedSegmentMB=5120, floorSegmentMB=2, forceMergeDeletesPctAllowed=10, segmentsPerTier=10, maxCFSSegmentSizeMB=8796093022207,999, noCFSRatio=0,1]
indexerThreadPool=Lucene.Net.Index.DocumentsWriterPerThreadPool
readerPooling=False
perThreadHardLimitMB=1945
useCompoundFile=True
checkIntegrityAtMerge=False
IndexUpgrader 8 [4/07/2026 17:15:57; .NET TP Worker]: Upgrading all pre-4.8 segments of index directory 'MockDirectoryWrapper(RAMDirectory@22b28f4 lockFactory=Lucene.Net.Store.SingleInstanceLockFactory)' to version 4.8...
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: forceMerge: index now _4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: now flush at forceMerge
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: startDoFlush
IW 8 [4/07/2026 17:15:57; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 8 [4/07/2026 17:15:57; .NET TP Worker]:   index before flush _4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: startFullFlush
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: apply all deletes during flush
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
UPGMP 8 [4/07/2026 17:15:57; .NET TP Worker]: findForcedMerges: segmentsToUpgrade={_4(4.0):C35=true}
TMP 8 [4/07/2026 17:15:57; .NET TP Worker]: FindForcedMerges maxSegmentCount=1 infos=_4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5 segmentsToMerge={_4(4.0):C35=true}
TMP 8 [4/07/2026 17:15:57; .NET TP Worker]: already merged
UPGMP 8 [4/07/2026 17:15:57; .NET TP Worker]: findForcedMerges: TieredMergePolicy does not want to merge all old segments, merge remaining ones into new segment: {_4(4.0):C35=true}
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: add merge to pendingMerges: _4(4.0):C35 [total 1 pending]
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: registerMerge merging= []
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: registerMerge info=_4(4.0):C35
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]: now merge
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:   index: _4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:   consider merge _4(4.0):C35
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:     launch new thread [Lucene Merge Thread #0]
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]: set priority of merge thread Lucene Merge Thread #0 to 3
CMS 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]:   merge thread: start
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:   no more merges pending; now return
TP 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: startMergeInit
BD 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: applyDeletes: no deletes; skipping
BD 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merge seg=_8 _4(4.0):C35
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: now merge
  merge=_4(4.0):C35
  index=_4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merging _4(4.0):C35
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: seg=_4(4.0):C35 no deletes
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merge store matchedCount=1 vs 1
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 1 msec to merge stored fields [35 docs]
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 13 msec to merge postings [35 docs]
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 4 msec to merge doc values [35 docs]
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 0 msec to merge norms [35 docs]
SM 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 4 msec to merge vectors [35 docs]
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merge codec=FastCompressingStoredFields(storedFieldsFormat=CompressingStoredFieldsFormat(compressionMode=FAST, chunkSize=453), termVectorsFormat=CompressingTermVectorsFormat(compressionMode=FAST, chunkSize=453)) docCount=35; merged segment has vectors; norms; docValues; prox; freqs
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merged segment size=0.015 MB vs estimate=0.030 MB
TP 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: startCommitMerge
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: commitMerge: _4(4.0):C35 index=_4(4.0):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
TP 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: startCommitMergeDeletes
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: commitMergeDeletes _4(4.0):C35
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: no new deletes or field updates since merge started
IFD 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: now checkpoint "_8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5" [4 segments ; isCommit = False]
IFD 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: 0 msec to checkpoint
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: after commitMerge: _8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
UPGMP 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: findForcedMerges: segmentsToUpgrade={}
IW 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]: merge time 26 msec for 35 docs
CMS 8 [4/07/2026 17:15:57; Lucene Merge Thread #0]:   merge thread: done
IndexUpgrader 8 [4/07/2026 17:15:57; .NET TP Worker]: All segments upgraded to version 4.8
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: now flush at close waitForMerges=True
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: startDoFlush
IW 8 [4/07/2026 17:15:57; .NET TP Worker]:   start flush: applyAllDeletes=True
IW 8 [4/07/2026 17:15:57; .NET TP Worker]:   index before flush _8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: startFullFlush
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: apply all deletes during flush
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]: now merge
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:   index: _8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
CMS 8 [4/07/2026 17:15:57; .NET TP Worker]:   no more merges pending; now return
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: waitForMerges
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: waitForMerges done
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: now call final commit()
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: start
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: enter lock
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: now prepare
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: prepareCommit: flush
IW 8 [4/07/2026 17:15:57; .NET TP Worker]:   index before flush _8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: startDoFlush
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: startFullFlush
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: anyChanges? numDocsInRam=0 deletes=False hasTickets:False pendingChangesInFullFlush: False
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: apply all deletes during flush
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: applyDeletes: no deletes; skipping
BD 8 [4/07/2026 17:15:57; .NET TP Worker]: prune sis=Lucene.Net.Index.SegmentInfos minGen=0 packetCount=0
DW 8 [4/07/2026 17:15:57; .NET TP Worker]: .NET TP Worker finishFullFlush success=True
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: startStartCommit
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: StartCommit(): start
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: startCommit index=_8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5 changeCount=2
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: midStartCommit
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: midStartCommit2
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: done all syncs: [_8.fdx, _8.fdt, _8_Lucene41_0.doc, _8_Lucene41_0.pos, _8_Lucene41_0.pay, _8_Lucene41_0.tim, _8_Lucene41_0.tip, _8_Lucene45_0.dvd, _8_Lucene45_0.dvm, _8.nvd, _8.nvm, _8.tvx, _8.tvd, _8.fnm, _8.si, _5.cfs, _5.cfe, _5.si, _6.cfs, _6.cfe, _6.si, _7.cfs, _7.cfe, _7.si]
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: midStartCommitSuccess
TP 8 [4/07/2026 17:15:57; .NET TP Worker]: finishStartCommit
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: pendingCommit != null
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: wrote segments file "segments_3"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: now checkpoint "_8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5" [4 segments ; isCommit = True]
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: deleteCommits: now decRef commit "segments_2"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "segments_2"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.tvx"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_Lucene40_0.prx"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_nrm.cfe"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.fnm"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.si"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.fdt"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.fdx"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.tvd"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_dv.cfs"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4.tvf"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_nrm.cfs"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_dv.cfe"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_Lucene40_0.frq"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_Lucene40_0.tip"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: delete "_4_Lucene40_0.tim"
IFD 8 [4/07/2026 17:15:57; .NET TP Worker]: 0 msec to checkpoint
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: commit: done
IW 8 [4/07/2026 17:15:57; .NET TP Worker]: at close: _8(4.8):C35 _5(4.8):c5 _6(4.8):c3 _7(4.8):c5
Success

Verbosity disabled to keep NUnit from running out of memory - enable manually

TEST: initIndex
TEST: done initIndex
TEST: now crash

dir=MockDirectoryWrapper(MMapDirectory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\testIndexExistsOnNonExistentDirectory-32f2sgir lockFactory=NativeFSLockFactory@C:\Users\shad\AppData\Local\Temp\LuceneTemp\testIndexExistsOnNonExistentDirectory-32f2sgir)

TestByteMissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt16MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt32MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestInt64MissingVsFieldCache:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestSortedSetFixedLengthSingleValuedVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetFixedLengthVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetFixedLengthVsUninvertedField:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetMergeAwayAllValues:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetOneValue:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTermsEnum:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetThreeValuesTwoDocs:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsFirstMissing:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsFirstMissingMerge:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsLastMissing:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsLastMissingMerge:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoDocumentsMerged:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoValues:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetTwoValuesUnordered:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthSingleValuedVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthVsStoredFields:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestSortedSetVariableLengthVsUninvertedField:   Codec does not support SORTED_SET
  Expected: True
  But was:  False

TestThreads2:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestThreeNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoBytesOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissing:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestTwoNumbersOneMissingWithMerging:   Codec does not support GetDocsWithField
  Expected: True
  But was:  False

TestClosingNRTReaderDoesNotCorruptYourIndex:   this test can't run on Windows
  Expected: True
  But was:  False

TestThreadInterruptDeadlock: Lucene.NET does not support Thread.Interrupt(). See https://github.com/apache/lucenenet/issues/526.
TestTwoThreadsInterruptDeadlock: Lucene.NET does not support Thread.Interrupt(). See https://github.com/apache/lucenenet/issues/526.
Locking Strategy: FileStreamLockViolation
Share Violation HResult: -2147024864
Lock Violation HResult: -2147024863

Count 57

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests._I-J\bin\Release\net10.0\Lucene.Net.Tests._I-J.dll
   NUnit3TestExecutor discovered 406 of 406 NUnit test cases using Current Discovery mode, Non-Explicit run
TestMergeStability:   The MockRandom PF randomizes content on the fly, so we can't check it
  Expected: True
  But was:  False

TestMergeStability:   The MockRandom PF randomizes content on the fly, so we can't check it
  Expected: True
  But was:  False

Locking Strategy: FileStreamLockViolation
Share Violation HResult: -2147024864
Lock Violation HResult: -2147024863

start test
End test

start test
End test

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests._J-S\bin\Release\net10.0\Lucene.Net.Tests._J-S.dll
   NUnit3TestExecutor discovered 1542 of 1542 NUnit test cases using Current Discovery mode, Non-Explicit run
TestHeartRanking:   PreFlex codec does not support the stats necessary for this test!
  Expected: True
  But was:  False

TestSimple2:   Broken scoring: LUCENE-3723
  Expected: True
  But was:  False

TestSpans2:   Broken scoring: LUCENE-3723
  Expected: True
  But was:  False

TestMultithreadedWaitForGeneration: Run Manually (contains timing code that doesn't play well with other tests)
TestStraightForwardDemonstration: Run Manually (contains timing code that doesn't play well with other tests)
TestDocValuesIntegration:   3.x does not support docvalues
  Expected: True
  But was:  False

TestMultiSloppyWithRepeats: This appears to be a known issue
Verbosity disabled. Enable manually if needed.

Verbosity disabled. Enable manually if needed.

C:\Users\shad\AppData\Local\Temp\LuceneTemp\nocreate-hz14r2ok

[ERROR] OneTimeTearDown: An exception occurred during CleanupTemporaryFiles() in Lucene.Net.Store.TestDirectory:
System.IO.IOException: Could not remove the following files (in the order of attempts):
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2\_0.cfs
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2\_0.cfx
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2

   at Lucene.Net.Util.TestUtil.Rm(FileSystemInfo[] locations) in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\TestUtil.cs:line 66
   at Lucene.Net.Util.LuceneTestCase.CleanupTemporaryFiles() in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\LuceneTestCase.cs:line 3165
   at Lucene.Net.Util.LuceneTestCase.OneTimeTearDown() in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\LuceneTestCase.cs:line 1039
TestThreadInterrupt: Lucene.NET does not support Thread.Interrupt(). See https://github.com/apache/lucenenet/issues/526.
TestTwoThreadsInterrupt: Lucene.NET does not support Thread.Interrupt(). See https://github.com/apache/lucenenet/issues/526.
TestLockInterruptibly1: LUCENENET: LockInterruptibly() is broken, but it is not in use anywhere but in the tests. Technically, Lucene.NET does not support Thread.Interrupt().
TestToString: LUCENENET: Not implemented
TestEquals: ConcurrentHashSet does not currently implement structural Equals
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests._T-Z\bin\Release\net10.0\Lucene.Net.Tests._T-Z.dll
   NUnit3TestExecutor discovered 807 of 809 NUnit test cases using Current Discovery mode, Non-Explicit run
Test: OneTimeSetUp: Requires tons of heap to run (420G works)
WARNING: Leftover undeleted temporary files (bugUrl: None): Could not remove the following files (in the order of attempts):
   C:\Users\shad\AppData\Local\Temp\lucene-linefiledocs-hzx3agb4.tmp

TestMonotoneSequencesLonger: For debugging only
TestStrictMonotoneSequencesLonger: For debugging only
TestIntOverflow: See LUCENE-4488 - LUCENENET NOTE: In .NET it is not possible to catch OOME
TestPagedGrowableWriterOverflow: // memory hole
TestChainedEstimation: // this shows an easy stack overflow because we're counting recursively.
mx:  35.589684 MB
rue: 35.603073 MB

49.241074 MB	   2 bytes	  24 bytes
49.611694 MB	   2 bytes	379.90625 KB
49.982376 MB	   2 bytes	759.1172 KB
50.352966 MB	   2 bytes	1.1119156 MB
50.72384 MB	   2 bytes	1.48246 MB
51.09436 MB	   2 bytes	1.8529816 MB
51.46559 MB	   2 bytes	2.2242126 MB
51.836357 MB	   2 bytes	2.5949783 MB
52.207893 MB	   2 bytes	2.9659271 MB
52.578278 MB	   2 bytes	3.3363113 MB
52.948555 MB	   2 bytes	3.7065887 MB
53.319283 MB	   2 bytes	4.0773163 MB
53.689896 MB	   2 bytes	4.4479294 MB
54.060417 MB	   2 bytes	4.818451 MB
54.430893 MB	   2 bytes	5.1889267 MB
54.80281 MB	   2 bytes	5.559761 MB
55.173637 MB	   2 bytes	5.930565 MB
55.573036 MB	   2 bytes	6.301323 MB
55.921425 MB	   2 bytes	6.671791 MB
56.29206 MB	   2 bytes	7.042404 MB
56.662643 MB	   2 bytes	7.4129868 MB
57.03383 MB	   2 bytes	7.784172 MB
57.40406 MB	   2 bytes	8.154404 MB
57.774673 MB	   2 bytes	8.525017 MB
58.1453 MB	   2 bytes	8.895645 MB
58.516327 MB	   2 bytes	9.26667 MB
58.887566 MB	   2 bytes	9.637909 MB
59.257637 MB	   2 bytes	10.00798 MB
59.628273 MB	   2 bytes	10.378616 MB
59.99858 MB	   2 bytes	10.748924 MB
60.371033 MB	   2 bytes	11.119255 MB
60.741447 MB	   2 bytes	11.489647 MB
61.11171 MB	   2 bytes	11.859909 MB
61.482338 MB	   2 bytes	12.230537 MB
61.85263 MB	   2 bytes	12.60083 MB
62.2231 MB	   2 bytes	12.971298 MB
62.593613 MB	   2 bytes	13.341812 MB
62.964165 MB	   2 bytes	13.712364 MB
63.334717 MB	   2 bytes	14.082916 MB
63.704926 MB	   2 bytes	14.453125 MB
64.075066 MB	   2 bytes	14.823265 MB
64.445885 MB	   2 bytes	15.194084 MB
64.81684 MB	   2 bytes	15.565041 MB
65.18768 MB	   2 bytes	15.935883 MB
65.558174 MB	   2 bytes	16.306374 MB
65.92887 MB	   2 bytes	16.67707 MB
66.298996 MB	   2 bytes	17.047195 MB
66.66959 MB	   2 bytes	17.417793 MB
67.0402 MB	   2 bytes	17.788399 MB
67.41059 MB	   2 bytes	18.15879 MB
67.78112 MB	   2 bytes	18.52932 MB
68.15256 MB	   2 bytes	18.900757 MB
68.52329 MB	   2 bytes	19.271492 MB
68.89413 MB	   2 bytes	19.642326 MB
69.26477 MB	   2 bytes	20.01297 MB
69.635574 MB	   2 bytes	20.383774 MB
70.00581 MB	   2 bytes	20.754013 MB
70.37631 MB	   2 bytes	21.124512 MB
70.74672 MB	   2 bytes	21.494919 MB
71.12132 MB	   2 bytes	21.865349 MB
71.49134 MB	   2 bytes	22.235321 MB
71.86203 MB	   2 bytes	22.60601 MB
72.232735 MB	   2 bytes	22.976715 MB
72.603615 MB	   2 bytes	23.347595 MB
72.97445 MB	   2 bytes	23.71843 MB
73.34481 MB	   2 bytes	24.08879 MB
73.71528 MB	   2 bytes	24.459259 MB
74.08574 MB	   2 bytes	24.82972 MB
74.45636 MB	   2 bytes	25.20034 MB
74.82698 MB	   2 bytes	25.570961 MB
75.198074 MB	   2 bytes	25.942055 MB
75.568756 MB	   2 bytes	26.312737 MB
75.90821 MB	   2 bytes	26.683464 MB
76.27873 MB	   2 bytes	27.053986 MB
76.649704 MB	   2 bytes	27.424957 MB
77.02011 MB	   2 bytes	27.795364 MB
77.390854 MB	   2 bytes	28.166107 MB
77.76136 MB	   2 bytes	28.536613 MB
78.13197 MB	   2 bytes	28.907227 MB
78.50235 MB	   2 bytes	29.277603 MB
78.873085 MB	   2 bytes	29.648338 MB
79.244095 MB	   2 bytes	30.019348 MB
79.61467 MB	   2 bytes	30.389923 MB
79.98543 MB	   2 bytes	30.760681 MB
80.35608 MB	   2 bytes	31.131332 MB
80.72691 MB	   2 bytes	31.502167 MB
81.09709 MB	   2 bytes	31.872345 MB
81.46755 MB	   2 bytes	32.242805 MB
81.8384 MB	   2 bytes	32.613655 MB
82.20899 MB	   2 bytes	32.984245 MB
82.57947 MB	   2 bytes	33.35472 MB
82.95001 MB	   2 bytes	33.725266 MB
83.32073 MB	   2 bytes	34.095985 MB
83.69113 MB	   2 bytes	34.466385 MB
84.06179 MB	   2 bytes	34.837044 MB
84.432655 MB	   2 bytes	35.20791 MB
84.80319 MB	   2 bytes	35.578445 MB
85.17397 MB	   2 bytes	35.949226 MB
85.54468 MB	   2 bytes	36.31993 MB
85.914925 MB	   2 bytes	36.690178 MB
86.28552 MB	   2 bytes	37.060776 MB
86.65637 MB	   2 bytes	37.431625 MB
87.02675 MB	   2 bytes	37.802002 MB
87.39711 MB	   2 bytes	38.172363 MB
87.76803 MB	   2 bytes	38.54328 MB
88.13887 MB	   2 bytes	38.914124 MB
88.46978 MB	   2 bytes	39.28414 MB
88.83994 MB	   2 bytes	39.654305 MB
89.21069 MB	   2 bytes	40.025055 MB
89.58111 MB	   2 bytes	40.39547 MB
89.95199 MB	   2 bytes	40.76635 MB
90.32243 MB	   2 bytes	41.136795 MB
90.69297 MB	   2 bytes	41.50733 MB
91.06341 MB	   2 bytes	41.87777 MB
91.43389 MB	   2 bytes	42.248253 MB
91.80415 MB	   2 bytes	42.618515 MB
92.17495 MB	   2 bytes	42.98931 MB
92.5456 MB	   2 bytes	43.359962 MB
92.892204 MB	   2 bytes	43.73047 MB
93.26264 MB	   2 bytes	44.100906 MB
93.617325 MB	   2 bytes	44.471237 MB
93.987816 MB	   2 bytes	44.84224 MB
94.35842 MB	   2 bytes	45.212845 MB
94.72899 MB	   2 bytes	45.583412 MB
95.09978 MB	   2 bytes	45.9542 MB
95.470184 MB	   2 bytes	46.324608 MB
95.84069 MB	   2 bytes	46.695114 MB
96.20336 MB	   2 bytes	47.06562 MB
96.574356 MB	   2 bytes	47.436615 MB
96.94495 MB	   2 bytes	47.807205 MB
97.31608 MB	   2 bytes	48.178337 MB
97.68684 MB	   2 bytes	48.549095 MB
98.0571 MB	   2 bytes	48.919357 MB
98.427925 MB	   2 bytes	49.290184 MB
98.79843 MB	   2 bytes	49.66069 MB

Test: OneTimeSetUp: You must increase heap to > 2 G to run this
Null lucene.version test property. You should run the tests with the official Lucene build file

TestOverflow: // memory hole
TestMaxSizeBounds: Increase heap size to run this test
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.AllProjects\bin\Release\net10.0\Lucene.Net.Tests.AllProjects.dll
   NUnit3TestExecutor discovered 1795 of 1795 NUnit test cases using Current Discovery mode, Non-Explicit run
TestIsError(NUnit.Framework.SuccessException,False,System.Action): Throwing a SuccessException.
TestIsThrowable(NUnit.Framework.SuccessException,False,System.Action): Throwing a SuccessException.
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.Common\bin\Release\net10.0\Lucene.Net.Tests.Analysis.Common.dll
   NUnit3TestExecutor discovered 1569 of 1569 NUnit test cases using Current Discovery mode, Non-Explicit run
WikipediaTokenizer.Reset()
WordDelimiterFilter.Reset()
WikipediaTokenizer->startOffset=0,endOffset=1,type=<ALPHANUM>,positionIncrement=1,term=B,bytes=[42],flags=0
WikipediaTokenizer->startOffset=13,endOffset=15,type=el,positionIncrement=0,term=jb,bytes=[6a 62],flags=0
WordDelimiterFilter->startOffset=13,endOffset=15,type=el,positionIncrement=1,term=jb,bytes=[6a 62],flags=0
WikipediaTokenizer.End()
WordDelimiterFilter.End()
WikipediaTokenizer.Close()
WordDelimiterFilter.Close()
WikipediaTokenizer.Reset()
WordDelimiterFilter.Reset()
WikipediaTokenizer->startOffset=0,endOffset=1,type=<ALPHANUM>,positionIncrement=1,term=B,bytes=[42],flags=0,clearCalled=True
WikipediaTokenizer->startOffset=13,endOffset=15,type=el,positionIncrement=0,term=jb,bytes=[6a 62],flags=0,clearCalled=True
WordDelimiterFilter->startOffset=13,endOffset=15,type=el,positionIncrement=1,term=jb,bytes=[6a 62],flags=0,clearCalled=True
WikipediaTokenizer.End()
WordDelimiterFilter.End()
WikipediaTokenizer.Close()
WordDelimiterFilter.Close()

Test: OneTimeSetUp: Enable manually
TestOneDictionary: OneTimeSetUp: Enable manually
Test: OneTimeSetUp: enable manually
TestOneDictionary: OneTimeSetUp: enable manually
TestNastyPattern: Ignored in Lucene
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.Kuromoji\bin\Release\net10.0\Lucene.Net.Tests.Analysis.Kuromoji.dll
   NUnit3TestExecutor discovered 129 of 129 NUnit test cases using Current Discovery mode, Non-Explicit run
dictionary builder

dictionary format: IPADIC
input directory: C:\Users\shad\AppData\Local\Temp\LuceneTemp\build-dictionary-input-vtca33xv
output directory: C:\Users\shad\AppData\Local\Temp\LuceneTemp\build-dictionary-output-hhfbdo3k
input encoding: euc-jp
normalize entries: True

building tokeninfo dict...
  parse...
  sort...
  encode...
  2024 nodes, 6051 arcs, 31470 bytes...  
 done
done
building unknown word dict...
done
building connection costs...
done

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.Morfologik\bin\Release\net10.0\Lucene.Net.Tests.Analysis.Morfologik.dll
   NUnit3TestExecutor discovered 18 of 18 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.OpenNLP\bin\Release\net10.0\Lucene.Net.Tests.Analysis.OpenNLP.dll
   NUnit3TestExecutor discovered 26 of 26 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.Phonetic\bin\Release\net10.0\Lucene.Net.Tests.Analysis.Phonetic.dll
   NUnit3TestExecutor discovered 354 of 354 NUnit test cases using Current Discovery mode, Non-Explicit run
Time for encoding 80000 times the input 'Angelo': 24579 millis.

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.SmartCn\bin\Release\net10.0\Lucene.Net.Tests.Analysis.SmartCn.dll
   NUnit3TestExecutor discovered 43 of 43 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Analysis.Stempel\bin\Release\net10.0\Lucene.Net.Tests.Analysis.Stempel.dll
   NUnit3TestExecutor discovered 31 of 31 NUnit test cases using Current Discovery mode, Non-Explicit run
C:\Users\shad\AppData\Local\Temp\LuceneTemp\testCompile-xhglyvcr\testRules.txt

C:\Users\shad\AppData\Local\Temp\LuceneTemp\testCompile-1liz00oy\testRules.txt

C:\Users\shad\AppData\Local\Temp\LuceneTemp\testCompile-xoglm2kt\testRules.txt

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Benchmark\bin\Release\net10.0\Lucene.Net.Tests.Benchmark.dll
   NUnit3TestExecutor discovered 120 of 120 NUnit test cases using Current Discovery mode, Non-Explicit run
TestWithoutAlt: In LUCENENET, we use all referenced assemblies by default. Currently, we don't support a scenario that loads external assemblies.
------------> starting task: Seq

------------> starting task: Seq

------------> Report Sum By Prefix (X) (1 about 1 out of 1012)
Operation     round   runCnt   recsPerRun        rec/s  elapsedSec    avgUsedMem    avgTotalMem
XSearch_2_Par     0        1         2279     4 468.63        0.51    12 651 184     12 651 184


Changed Locale to: 
Changed Analyzer to: ICUCollationKeyAnalyzer()

--> Round 0-->1

Changed Locale to: de
Changed Analyzer to: ICUCollationKeyAnalyzer(de)

--> Round 0-->1

Changed Locale to: en-US
Changed Analyzer to: ICUCollationKeyAnalyzer(en-US)

--> Round 0-->1

Changed Locale to: nb-NO
Changed Analyzer to: ICUCollationKeyAnalyzer(nb-NO)

--> Round 0-->1

Changed Locale to: 
Changed Analyzer to: CollationKeyAnalyzer()

--> Round 0-->1

Changed Locale to: de
Changed Analyzer to: CollationKeyAnalyzer(de)

--> Round 0-->1

Changed Locale to: en-US
Changed Analyzer to: CollationKeyAnalyzer(en-US)

--> Round 0-->1

Changed Locale to: nb-NO
Changed Analyzer to: CollationKeyAnalyzer(nb-NO)

--> Round 0-->1


------------> starting task: Seq
------------> starting task: Rounds

------------> Report Sum By (any) Name (4 about 4 out of 5)
Operation       round   runCnt   recsPerRun        rec/s  elapsedSec    avgUsedMem    avgTotalMem
Rounds              0        1           20       952.38        0.02    13 627 632     13 627 632
CreateIndex -  -  - 0 -  -   1 -  -  -  - 0 -  -  - 0.00 -  -   0.00 -  12 288 496 -   12 288 496
AddDocs_Exhaust     0        1           20    20 000.00        0.00    12 620 176     12 620 176
CloseIndex -  -  -  0 -  -   1 -  -  -  - 0 -  -  - 0.00 -  -   0.00 -  13 627 632 -   13 627 632

------------> starting task: Seq
------------> starting task: Rounds

------------> Report Sum By (any) Name (4 about 4 out of 5)
Operation       round   runCnt   recsPerRun        rec/s  elapsedSec    avgUsedMem    avgTotalMem
Rounds              0        1           22     1 047.62        0.02    13 634 320     13 634 320
CreateIndex -  -  - 0 -  -   1 -  -  -  - 1 -   1 000.00 -  -   0.00 -  12 290 984 -   12 290 984
AddDocs_Exhaust     0        1           20    20 000.00        0.00    12 623 328     12 623 328
CloseIndex -  -  -  0 -  -   1 -  -  -  - 1 -  -  333.33 -  -   0.00 -  13 634 320 -   13 634 320


------------> starting task: Seq

------------> starting task: Seq

------------> starting task: Rounds_2

------------> starting task: Seq

------------> starting task: Seq
0000000.52 sec --> .NET TP Worker added 1,000.000000000 docs

------------> starting task: Seq
0000001.03 sec --> .NET TP Worker added 1,000.000000000 docs

------------> starting task: Seq
0000000.37 sec --> .NET TP Worker added 1,000.000000000 docs

------------> starting task: Seq


--> Round 0-->1:   doc.term.vector:False-->True  compound:True-->False


--> Round 1-->2:   doc.term.vector:True-->False  compound:False-->True


------------> starting task: Seq

Changed Locale to: null

--> Round 0-->1

Changed Locale to: 

--> Round 0-->1

Changed Locale to: de

--> Round 0-->1

Changed Locale to: en-US

--> Round 0-->1

Changed Locale to: nb-NO

--> Round 0-->1


------------> starting task: Seq

------------> starting task: Seq
------------> starting task: CreateIndex
------------> starting task: Seq_Exhaust
------------> starting task: Seq_Exhaust
------------> starting task: WaitForMerges
------------> starting task: CloseIndex

------------> starting task: Seq

------------> starting task: Seq
------------> starting task: Seq
------------> starting task: Seq
------------> starting task: Seq

------------> starting task: Seq

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:

Spatial Strategy: RecursivePrefixTreeStrategyAnonymousClass(prefixGridScanLevel:7,SPG:(GeohashPrefixTree(maxLevels:11,ctx:SpatialContext{geo=True, calculator=Haversine, worldBounds=Rect(minX=-180,maxX=180,minY=-90,maxY=90)})))
------------> queries:

------------> queries:

------------> queries:

------------> queries:

------------> queries:


------------> starting task: Seq

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Classification\bin\Release\net10.0\Lucene.Net.Tests.Classification.dll
   NUnit3TestExecutor discovered 25 of 25 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\dotnet\tools\Lucene.Net.Tests.Cli\bin\Release\net10.0\Lucene.Net.Tests.Cli.dll
   NUnit3TestExecutor discovered 248 of 248 NUnit test cases using Current Discovery mode, Non-Explicit run

-------------------------
Run 'demo index-files --view-source-code' to see the C# code or 'demo index-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo index-files --view-source-code' to see the C# code or 'demo index-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo index-files --view-source-code' to see the C# code or 'demo index-files --output-source-code <DIRECTORY>' to export the code to a local directory.


-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

-------------------------
Run 'demo search-files --view-source-code' to see the C# code or 'demo search-files --output-source-code <DIRECTORY>' to export the code to a local directory.

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Codecs\bin\Release\net10.0\Lucene.Net.Tests.Codecs.dll
   NUnit3TestExecutor discovered 466 of 466 NUnit test cases using Current Discovery mode, Non-Explicit run
TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

Test10kNotPulsed: This is a nightly test.
Test10kPulsed: This is a nightly test.
TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

TestDocsAndFreqs: This is a nightly test.
TestDocsAndFreqsAndPositions: This is a nightly test.
TestDocsAndFreqsAndPositionsAndOffsets: This is a nightly test.
TestDocsAndFreqsAndPositionsAndOffsetsAndPayloads: This is a nightly test.
TestDocsAndFreqsAndPositionsAndPayloads: This is a nightly test.
TestDocsOnly: This is a nightly test.
TestMergeStability: This is a nightly test.
TestRandom: This is a nightly test.
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Demo\bin\Release\net10.0\Lucene.Net.Tests.Demo.dll
   NUnit3TestExecutor discovered 15 of 15 NUnit test cases using Current Discovery mode, Non-Explicit run
Indexing to directory 'C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTest-etnulrkb'...
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\apache1.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\apache1.1.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\apache2.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\cpl1.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\epl1.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\freebsd.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\gpl1.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\gpl2.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\gpl3.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\lgpl2.1.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\lgpl3.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\lpgl2.0.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\mit.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\mozilla1.1.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\mozilla_eula_firefox3.txt
adding C:\Users\shad\AppData\Local\Temp\LuceneTemp\DemoTestFiles-ljthulsq\mozilla_eula_thunderbird2.txt
798,0995 total milliseconds

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Expressions\bin\Release\net10.0\Lucene.Net.Tests.Expressions.dll
   NUnit3TestExecutor discovered 109 of 109 NUnit test cases using Current Discovery mode, Non-Explicit run
line 1:0 no viable alternative at input '<EOF>'
line 1:1 no viable alternative at input ')'
line 3:2 no viable alternative at input '<EOF>'
line 1:2 no viable alternative at input '/'
line 1:0 no viable alternative at input '.'
TestCoRecursion: StackOverflowException can't be caught in .NET
TestCoRecursion2: StackOverflowException can't be caught in .NET
TestCoRecursion3: StackOverflowException can't be caught in .NET
TestCoRecursion4: StackOverflowException can't be caught in .NET
TestSelfRecursion: StackOverflowException can't be caught in .NET
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Facet\bin\Release\net10.0\Lucene.Net.Tests.Facet.dll
   NUnit3TestExecutor discovered 181 of 181 NUnit test cases using Current Discovery mode, Non-Explicit run
TestManyFacetsInOneDocument:   default Codec doesn't support huge BinaryDocValues
  Expected: True
  But was:  False

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Grouping\bin\Release\net10.0\Lucene.Net.Tests.Grouping.dll
   NUnit3TestExecutor discovered 63 of 63 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Highlighter\bin\Release\net10.0\Lucene.Net.Tests.Highlighter.dll
   NUnit3TestExecutor discovered 191 of 191 NUnit test cases using Current Discovery mode, Non-Explicit run
Highlighter iter: 0
Highlighter iter: 1
Highlighter iter: 2
Highlighter iter: 3
Highlighter iter: 4
Highlighter iter: 5
Highlighter iter: 6
Highlighter iter: 7
Highlighter iter: 8
Highlighter iter: 9
Highlighter iter: 10
Highlighter iter: 11
Highlighter iter: 12
Highlighter iter: 13
Highlighter iter: 14
Highlighter iter: 15
Highlighter iter: 16
Highlighter iter: 17
Highlighter iter: 18
Highlighter iter: 19
Highlighter iter: 20
Highlighter iter: 21
Highlighter iter: 22
Highlighter iter: 23
Highlighter iter: 24
Highlighter iter: 25
Highlighter iter: 26
Highlighter iter: 27
Highlighter iter: 28
Highlighter iter: 29
Highlighter iter: 30
Highlighter iter: 31
Highlighter iter: 32
Highlighter iter: 33
Highlighter iter: 34
Highlighter iter: 35
Highlighter iter: 36
Highlighter iter: 37
Highlighter iter: 38
Highlighter iter: 39
Highlighter iter: 40
Highlighter iter: 41
Highlighter iter: 42
Highlighter iter: 43
Highlighter iter: 44
Highlighter iter: 45
Highlighter iter: 46
Highlighter iter: 47
Highlighter iter: 48
Highlighter iter: 49
Highlighter iter: 50
Highlighter iter: 51
Highlighter iter: 52
Highlighter iter: 53
Highlighter iter: 54
Highlighter iter: 55
Highlighter iter: 56
Highlighter iter: 57
Highlighter iter: 58
Highlighter iter: 59
Highlighter iter: 60
Highlighter iter: 61
Highlighter iter: 62
Highlighter iter: 63
Highlighter iter: 64
Highlighter iter: 65
Highlighter iter: 66
Highlighter iter: 67
Highlighter iter: 68
Highlighter iter: 69
Highlighter iter: 70
Highlighter iter: 71
Highlighter iter: 72
Highlighter iter: 73
Highlighter iter: 74
Highlighter iter: 75
Highlighter iter: 76
Highlighter iter: 77
Highlighter iter: 78
Highlighter iter: 79
Highlighter iter: 80
Highlighter iter: 81
Highlighter iter: 82
Highlighter iter: 83
Highlighter iter: 84
Highlighter iter: 85
Highlighter iter: 86
Highlighter iter: 87
Highlighter iter: 88
Highlighter iter: 89
Highlighter iter: 90
Highlighter iter: 91
Highlighter iter: 92
Highlighter iter: 93
Highlighter iter: 94
Highlighter iter: 95
Highlighter iter: 96
Highlighter iter: 97
Highlighter iter: 98
Highlighter iter: 99
Highlighter iter: 100
Highlighter iter: 101
Highlighter iter: 102
Highlighter iter: 103
Highlighter iter: 104
Highlighter iter: 105
Highlighter iter: 106
Highlighter iter: 107

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\dotnet\Lucene.Net.Tests.ICU\bin\Release\net10.0\Lucene.Net.Tests.ICU.dll
   NUnit3TestExecutor discovered 304 of 304 NUnit test cases using Current Discovery mode, Non-Explicit run
TestLineIteration: Not required to confirm compatibility with Java, as this is not required by Lucene's tests.
TestWordIterationThai: We did not make a dictionary based break iterator with custom Thai rules, so this has the default behavior of ICU rather than the JDK
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Join\bin\Release\net10.0\Lucene.Net.Tests.Join.dll
   NUnit3TestExecutor discovered 70 of 70 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Memory\bin\Release\net10.0\Lucene.Net.Tests.Memory.dll
   NUnit3TestExecutor discovered 27 of 27 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Misc\bin\Release\net10.0\Lucene.Net.Tests.Misc.dll
   NUnit3TestExecutor discovered 57 of 57 NUnit test cases using Current Discovery mode, Non-Explicit run
numFieldValues == 1277

TestSortedSetDocValuesField:   default codec does not support SORTED_SET
  Expected: True
  But was:  False

Writing part 1 ...
Writing part 2 ...
Writing part 3 ...
Done.
Writing part 1 ...
Writing part 2 ...
Writing part 3 ...
Done.
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Queries\bin\Release\net10.0\Lucene.Net.Tests.Queries.dll
   NUnit3TestExecutor discovered 116 of 116 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.QueryParser\bin\Release\net10.0\Lucene.Net.Tests.QueryParser.dll
   NUnit3TestExecutor discovered 446 of 446 NUnit test cases using Current Discovery mode, Non-Explicit run
Output of formatter.Format():
"December 31, 1969 8:00:00 AM -8"

Output of formatter.Format():
"December 31, 1969 8:00 AM"

Output of formatter.Format():
"October 31, 1871 9:30:13 AM"

TestEscapedWildcard: flexible queryparser shouldn't escape wildcard terms
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Replicator\bin\Release\net10.0\Lucene.Net.Tests.Replicator.dll
   NUnit3TestExecutor discovered 121 of 121 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Sandbox\bin\Release\net10.0\Lucene.Net.Tests.Sandbox.dll
   NUnit3TestExecutor discovered 61 of 61 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Spatial\bin\Release\net10.0\Lucene.Net.Tests.Spatial.dll
   NUnit3TestExecutor discovered 45 of 45 NUnit test cases using Current Discovery mode, Non-Explicit run
Document<stored,indexed,tokenized<id:1>>

Strategy: RecursivePrefixTreeStrategy(prefixGridScanLevel:-2,SPG:(GeohashPrefixTree(maxLevels:2,ctx:SpatialContext.Geo)))

Strategy: RecursivePrefixTreeStrategy(prefixGridScanLevel:-2,SPG:(GeohashPrefixTree(maxLevels:2,ctx:SpatialContext.Geo)))

Strategy: RecursivePrefixTreeStrategy(prefixGridScanLevel:-2,SPG:(GeohashPrefixTree(maxLevels:2,ctx:SpatialContext.Geo)))

Strategy: RecursivePrefixTreeStrategy(prefixGridScanLevel:-2,SPG:(GeohashPrefixTree(maxLevels:2,ctx:SpatialContext.Geo)))

Document<stored,indexed,tokenized<id:1>>

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.Suggest\bin\Release\net10.0\Lucene.Net.Tests.Suggest.dll
   NUnit3TestExecutor discovered 168 of 168 NUnit test cases using Current Discovery mode, Non-Explicit run
the returned/10
top of the lake/5
star wars: episode v - the empire strikes back/2

TestConstructionTime: OneTimeSetUp: COMMENT ME TO RUN BENCHMARKS!
TestPerformanceOnFullHits: OneTimeSetUp: COMMENT ME TO RUN BENCHMARKS!
TestPerformanceOnPrefixes2_4: OneTimeSetUp: COMMENT ME TO RUN BENCHMARKS!
TestPerformanceOnPrefixes6_9: OneTimeSetUp: COMMENT ME TO RUN BENCHMARKS!
TestStorageNeeds: OneTimeSetUp: COMMENT ME TO RUN BENCHMARKS!
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.TestFramework\bin\Release\net10.0\Lucene.Net.Tests.TestFramework.dll
   NUnit3TestExecutor discovered 190 of 190 NUnit test cases using Current Discovery mode, Non-Explicit run
TestHugeBinaryValueLimit:   test requires codec with limits on max binary field length
  Expected: True
  But was:  False

TestContext.Parameters (0)
TestHashCodeReadProperty: Test SystemProperties is different from internal SystemProperties - seed is not set in base engine
TestFsyncDoesntCreateNewFiles:   test only works for FSDirectory subclasses
  Expected: True
  But was:  False

NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.TestFramework.DependencyInjection\bin\Release\net10.0\Lucene.Net.Tests.TestFramework.DependencyInjection.dll
   NUnit3TestExecutor discovered 3 of 3 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\Lucene.Net.Tests.TestFramework.NUnitExtensions\bin\Release\net10.0\Lucene.Net.Tests.TestFramework.NUnitExtensions.dll
   NUnit3TestExecutor discovered 18 of 18 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
NUnit Adapter 4.6.0.0: Test execution started
Running selected tests in F:\Projects\lucenenet\src\dotnet\Lucene.Net.Tests.CodeAnalysis\bin\Release\net8.0\Lucene.Net.Tests.CodeAnalysis.dll
   NUnit3TestExecutor discovered 39 of 39 NUnit test cases using Current Discovery mode, Non-Explicit run
NUnit Adapter 4.6.0.0: Test execution complete
========== Test run finished: 10918 Tests (10747 Passed, 0 Failed, 54 Skipped) run in 6.5 min ==========

There was only 1 exception due to files that could not be closed:

[ERROR] OneTimeTearDown: An exception occurred during CleanupTemporaryFiles() in Lucene.Net.Store.TestDirectory:
System.IO.IOException: Could not remove the following files (in the order of attempts):
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2\_0.cfs
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2\_0.cfx
   C:\Users\shad\AppData\Local\Temp\LuceneTemp\LUCENENET521-hdk45qc2

   at Lucene.Net.Util.TestUtil.Rm(FileSystemInfo[] locations) in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\TestUtil.cs:line 66
   at Lucene.Net.Util.LuceneTestCase.CleanupTemporaryFiles() in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\LuceneTestCase.cs:line 3165
   at Lucene.Net.Util.LuceneTestCase.OneTimeTearDown() in F:\Projects\lucenenet\src\Lucene.Net.TestFramework\Util\LuceneTestCase.cs:line 1039

I saw this happen at least twice, so I suspect there may be an issue with that test rather than this PR.

I haven't reviewed the code yet, though. I just wanted to see whether this fixes the issues in #1361, and it does.

Although, see #1400. This branch wasn't rebased against the latest master branch and initially I saw many CheckIndex failures. That gave me pause on this because I thought there was something seriously wrong. But, it turns out that #1360 hasn't yet been included here, so those errors were only caused because the Debug.Assert() statements were invalid and I was running in Debug mode.

Note that with awaitsFix: "true", the JRE crash test also holds open files. But #1292 isn't included here, which is supposed to fix that. I didn't attempt a rebase to work out whether that fix still holds with this directory implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

notes:breaking-change Has changes that will break backward compatibility

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Search performance issue with MMapDirectory under load Search crash

2 participants