lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-887) Interruptible segment merges
Date Thu, 22 Nov 2007 11:03:43 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12544769
] 

Michael McCandless commented on LUCENE-887:
-------------------------------------------


I believe close(false) marks all still-running merges as aborted
(calls OneMerge.abort()) and then returns immediately without waiting
for them to finish?

However, you're right, those merge threads are not "killed" in that
they keep running until they "notice" they were aborted (typically
when the merge tries to commit its results).  Right now we don't make
any effort to have the merging process notice sooner that it was
aborted and abort the thread.

If we could somehow reach in & find all FSIndexOutputs that are
presently opened by SegmentMerger, and forcefully close them (forcing
an IOException which ConcurrentMergeScheduler catches & ignores if the
merge was aborted) that'd give us a fast way to have the threads stop
working.

Oh, one issue is we are failing to setDaemon(true) on these threads,
which means the JVM will not exit until they complete.  I'll fix
that.


> Interruptible segment merges
> ----------------------------
>
>                 Key: LUCENE-887
>                 URL: https://issues.apache.org/jira/browse/LUCENE-887
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: Index
>            Reporter: Michael Busch
>            Assignee: Michael Busch
>            Priority: Minor
>         Attachments: ExtendedIndexWriter.java
>
>
> Adds the ability to IndexWriter to interrupt an ongoing merge. This might be necessary
when Lucene is e. g. running as a service and has to stop indexing within a certain period
of time due to a shutdown request.
> A solution would be to add a new method shutdown() to IndexWriter which satisfies the
following two requirements:
> - if a merge is happening, abort it
> - flush the buffered docs but do not trigger a merge 
> See also discussions about this feature on java-dev:
> http://www.gossamer-threads.com/lists/lucene/java-dev/49008

-- 
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: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message