You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2016/12/02 20:30:51 UTC
lucene-solr:branch_6x: improve IW javadocs
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6x b6072f3ae -> 537ac854a
improve IW javadocs
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/537ac854
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/537ac854
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/537ac854
Branch: refs/heads/branch_6x
Commit: 537ac854ac2531a98b2032e43150aabf5d764639
Parents: b6072f3
Author: Mike McCandless <mi...@apache.org>
Authored: Fri Dec 2 15:30:37 2016 -0500
Committer: Mike McCandless <mi...@apache.org>
Committed: Fri Dec 2 15:30:37 2016 -0500
----------------------------------------------------------------------
.../org/apache/lucene/index/IndexWriter.java | 31 ++++++++++++--------
1 file changed, 18 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/537ac854/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
----------------------------------------------------------------------
diff --git a/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java b/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
index 5557dd1..2b6c20c 100644
--- a/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
+++ b/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
@@ -133,19 +133,24 @@ import org.apache.lucene.util.Version;
<a name="deletionPolicy"></a>
<p>Expert: <code>IndexWriter</code> allows an optional
- {@link IndexDeletionPolicy} implementation to be
- specified. You can use this to control when prior commits
- are deleted from the index. The default policy is {@link
- KeepOnlyLastCommitDeletionPolicy} which removes all prior
- commits as soon as a new commit is done (this matches
- behavior before 2.2). Creating your own policy can allow
- you to explicitly keep previous "point in time" commits
- alive in the index for some time, to allow readers to
- refresh to the new commit without having the old commit
- deleted out from under them. This is necessary on
- filesystems like NFS that do not support "delete on last
- close" semantics, which Lucene's "point in time" search
- normally relies on. </p>
+ {@link IndexDeletionPolicy} implementation to be specified. You
+ can use this to control when prior commits are deleted from
+ the index. The default policy is {@link KeepOnlyLastCommitDeletionPolicy}
+ which removes all prior commits as soon as a new commit is
+ done. Creating your own policy can allow you to explicitly
+ keep previous "point in time" commits alive in the index for
+ some time, either because this is useful for your application,
+ or to give readers enough time to refresh to the new commit
+ without having the old commit deleted out from under them.
+ The latter is necessary when multiple computers take turns opening
+ their own {@code IndexWriter} and {@code IndexReader}s
+ against a single shared index mounted via remote filesystems
+ like NFS which do not support "delete on last close" semantics.
+ A single computer accessing an index via NFS is fine with the
+ default deletion policy since NFS clients emulate "delete on
+ last close" locally. That said, accessing an index via NFS
+ will likely result in poor performance compared to a local IO
+ device. </p>
<a name="mergePolicy"></a> <p>Expert:
<code>IndexWriter</code> allows you to separately change