[ 
https://issues.apache.org/jira/browse/LUCENE-1401?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12634059#action_12634059
 ] 

Uwe Schindler commented on LUCENE-1401:
---------------------------------------

This patch seems to work, the IndexWriters created by the MaxFieldLength ctors 
are with autocommit=false, I have seen this, because the segment file does not 
change during indexing.

There is on small thing (was also there before your patch):
I use writer.setUseCompoundFile(true) to use compound files (which is also the 
default). It generates normally always only CFS files (on index creation, when 
optimizing,...). There is only one use case, when cfs and cfx files are 
generated:

- Use IndexWriter with create=true
- add documents to the index
- optimize the index (without closing in between)

After that the optimized index contains of one cfs and one cfx. During indexing 
(before optimization), I always see only cfs files for new segments (and for 
short times as usual the contents tfx,...).

When optimizing the index after closing it or later after adding documents, i 
got only one cfs file.

Two questions:
- Is this a small bug, which would be not release critical - but it is strange?
- How can I enable creation of doc store (cfx) and cfs always, I found nothing 
in the docs. In my opinion the separate cfs/cfx files are good for search 
performance (right?).

> Deprecation of autoCommit in 2.4 leads to compile problems, when autoCommit 
> should be false
> -------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-1401
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1401
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.4, 2.9
>            Reporter: Uwe Schindler
>            Assignee: Michael McCandless
>            Priority: Trivial
>             Fix For: 2.4, 2.9
>
>         Attachments: LUCENE-1401.patch
>
>
> I am currently changing my code to be most compatible with 2.4. I switched on 
> deprecation warnings and got a warning about the autoCommit parameter in 
> IndexWriter constructors.
> My code *should* use autoCommit=false, so I want to use the new semantics. 
> The default of IndexWriter is still autoCommit=true. My problem now: How to 
> disable autoCommit whithout deprecation warnings?
> Maybe, the "old" constructors, that are deprecated should use 
> autoCommit=true. But there are new constructors with this 
> "IndexWriter.MaxFieldLength mfl" in it, that appear new in 2.4 but are 
> deprecated:
> IndexWriter(Directory d, boolean autoCommit, Analyzer a, boolean create, 
> IndexDeletionPolicy deletionPolicy, IndexWriter.MaxFieldLength mfl) 
>           Deprecated. This will be removed in 3.0, when autoCommit will be 
> hardwired to false. Use 
> IndexWriter(Directory,Analyzer,boolean,IndexDeletionPolicy,MaxFieldLength) 
> instead, and call commit() when needed.
> What the hell is meant by this, a new constructor that is deprecated? And the 
> hint is wrong. If I use the other constructor in the warning, I get 
> autoCommit=true.
> There is something completely wrong.
> It should be clear, which constructors set autoCommit=true, which set it per 
> default to false (perhaps new ones), and the Deprecated text is wrong, if 
> autoCommit does not default to false.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to