You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steven Parkes (JIRA)" <ji...@apache.org> on 2007/06/21 23:46:25 UTC

[jira] Created: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

I/O exceptions can cause loss of buffered deletes
-------------------------------------------------

                 Key: LUCENE-938
                 URL: https://issues.apache.org/jira/browse/LUCENE-938
             Project: Lucene - Java
          Issue Type: Bug
          Components: Index
    Affects Versions: 2.3
            Reporter: Steven Parkes
            Assignee: Steven Parkes
             Fix For: 2.3


Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512274 ] 

Steven Parkes commented on LUCENE-938:
--------------------------------------

Okay. Got it.

But your earlier note got me thinking. Mike, as far as I can tell, the 843 buffered docs stuff isn't getting restored around a transaction? Or am I missing something? Are you assuming flush is called before startTransaction?


> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Resolved: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael McCandless resolved LUCENE-938.
---------------------------------------

       Resolution: Fixed
    Lucene Fields: [New, Patch Available]  (was: [Patch Available, New])

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.patch.txt, LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12507050 ] 

Michael McCandless commented on LUCENE-938:
-------------------------------------------

Wow, good catch and nice unit test!

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512249 ] 

Steven Parkes commented on LUCENE-938:
--------------------------------------

Easy first: there's a comment in the code about cloning the buf delete term hash with a clear vs. copying the reference and creating a new hash. I've gone back and forth. I don't have a strong opinion.

I did notice that every call to startTransaction had flushed the deletes ahead but I didn't see that it was required to be so. I can go either way on this, too. I'd vote for making startTransaction safer.  I think, in theory, it could be opened to users at some point, if it were to help people trying to use Lucene in certain transactional contexts.

Of course, that violates YAGNI.

But I hadn't looked at the ram segments. Does look like if there are any at the start of a trans. and they get flushed, they would/might get lost? Since that touches on the index file deleter, it strikes me as more complex.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Updated: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Parkes updated LUCENE-938:
---------------------------------

    Attachment: LUCENE-938.txt

Patch that fixes the two relevant rollback mechanisms in IndexWriter: the rollback support in mergeSegments around maybeApplyDeletes and the rollback support in  the *Transaction methods. For the later, I had to promote the transaction routines from private to package protected so that I could write the tests, which are also in the patch.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.3
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12510235 ] 

Steven Parkes commented on LUCENE-938:
--------------------------------------

Thanks. I figured there'd be conflicts.

I won't be able to look at this until next week ...

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Updated: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Parkes updated LUCENE-938:
---------------------------------

    Attachment: LUCENE-938.patch.txt

New patch. Removes support for buf deletes around transactions but documents and asserts this.

Fixes a few typos in the comments.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.patch.txt, LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512289 ] 

Steven Parkes commented on LUCENE-938:
--------------------------------------

Works for me. I'll submit a new patch.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12507052 ] 

Steven Parkes commented on LUCENE-938:
--------------------------------------

Only it's broke. Mixing a couple of things, I missed a couple of tests that I broke. That's what I get for coding with a cold. Another fix soon.

And I was going to mention that I added support in the mock directory stuff for injecting deterministic I/O errors. Should help us capture tricky corner cases where we need to.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512287 ] 

Michael McCandless commented on LUCENE-938:
-------------------------------------------

Ahh, right, we are not protecting buffered doc state inside the local
transaction.  And actually doing so would not be very easy.

I would say we require that there are no buffered docs nor deletes
when startTransaction() is called.  The code guarantees that now but
how about we doc this limitation and put an assert in there to make
sure?

These methods were added only for protecting the index during the
addIndexes* calls; if in the future we somehow want to make them more
powerful I think we can fix it then...


> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Updated: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Parkes updated LUCENE-938:
---------------------------------

    Attachment: LUCENE-938.txt

This version has the missing fixes that got tossed when I tried to clean up that patch.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Updated: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Steven Parkes (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Parkes updated LUCENE-938:
---------------------------------

        Lucene Fields: [New, Patch Available]  (was: [New])
    Affects Version/s:     (was: 2.3)

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512494 ] 

Michael McCandless commented on LUCENE-938:
-------------------------------------------

This patch looks great!  Thanks Steve.  I'll commit it shortly.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.patch.txt, LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Ning Li (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12512271 ] 

Ning Li commented on LUCENE-938:
--------------------------------

I didn't make myself clear. Let me try again. The patch includes two parts of changes to IndexWriter: one adds localNumBufferedDeleteTerms and localBufferedDeleteTerms and uses them in startTransaction() and rollbackTransaction(); the other fixes loss of buffered deletes in flush() (and applyDeletes() which is used by flush()).

The second part is good and that's where you had the comment on cloning.

I was referring to the first part. In startTransaction(), "localBufferedDeleteTerms = bufferedDeleteTerms" reference-copies bufferedDeleteTerms. Then more delete terms are buffered into bufferedDeleteTerms... so localBufferedDeleteTerms would have the delete terms buffered between startTransaction() and the first flush()... 

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Updated: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Michael McCandless (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael McCandless updated LUCENE-938:
--------------------------------------

    Attachment: LUCENE-938.take2.patch

Steve, I re-worked this patch now that LUCENE-843 is committed (it
conflicted) and am attaching it (LUCENE-938.take2.patch).  It's the
same logic as before.  If it looks good to you I can commit it!


> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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


[jira] Commented: (LUCENE-938) I/O exceptions can cause loss of buffered deletes

Posted by "Ning Li (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LUCENE-938?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12510422 ] 

Ning Li commented on LUCENE-938:
--------------------------------

Good catch, Steven!

One thing though: I thought we had assumed that there wouldn't be any buffered docs or delete terms when startTransaction(), so no local copies are necessary. That means no change to startTransaction() and rollbackTransaction(). If there could be buffered docs and delete terms when startTransaction(), then local copies should be made for buffered docs and localNumBufferedDeleteTerms should clone numBufferedDeleteTerms instead of just copying the reference.

> I/O exceptions can cause loss of buffered deletes
> -------------------------------------------------
>
>                 Key: LUCENE-938
>                 URL: https://issues.apache.org/jira/browse/LUCENE-938
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>            Reporter: Steven Parkes
>            Assignee: Steven Parkes
>             Fix For: 2.3
>
>         Attachments: LUCENE-938.take2.patch, LUCENE-938.txt, LUCENE-938.txt
>
>
> Some I/O exceptions that result in segmentInfos rollback operations can cause buffered deletes that existed before the rollback creation point to be incorrectly lost when the IOException triggers a rollback.

-- 
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