uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marshall Schor (JIRA)" <...@uima.apache.org>
Subject [jira] [Commented] (UIMA-3396) Wrong method to remove element in delta index journal processing
Date Fri, 01 Nov 2013 00:43:18 GMT

    [ https://issues.apache.org/jira/browse/UIMA-3396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13810906#comment-13810906

Marshall Schor commented on UIMA-3396:

While investigating, some additional edge cases around converting the journal of index adds
and removes to the add/remove/reindex lists, were discovered that were not being handled quite
right, so these were fixed:

Before: a Remove - Add of a particular FS, say FS1,would put FS1 in the reindex list.  If
an Add FS1 event then happened, this would append FS1 to the add-to-indexes list.

After: An additional Add FS1 event in this case would not be added to the add-to-indexes list
(because it's already on the reindex list).
Before: if FS1 was in the reindexed list, and a remove FS1 event happened, this would cause
FS1 to be removed from the reindexed list (only).

After: in addition to being removed from the reindexed list, FS1 is now added to the remove-from-indexes

Although the normal use case is to do operations which process the journal once, the logic
permits processing it multiple times.  However, the journal is not "cleared" after it is processed,
so if any additional FSs are added or removed from the indexes, the next reference to the
delta information will cause the entire journal to be re-processed.  This edge case may not
happen in usual practice, but there seems to be no reason not to clear the journal after it
is processed.

> Wrong method to remove element in delta index journal processing
> ----------------------------------------------------------------
>                 Key: UIMA-3396
>                 URL: https://issues.apache.org/jira/browse/UIMA-3396
>             Project: UIMA
>          Issue Type: Bug
>    Affects Versions: 2.4.2SDK
>            Reporter: Marshall Schor
>            Assignee: Marshall Schor
>             Fix For: 2.5.0SDK
> A user reported an array index out of bounds during XmiSerialization back from a uima-as
service.  The stack trace pointed to the processIndexUpdates method; an inspection of that
method shows that the remove operation to remove a FeatureStructure (represented by an int)
is wrongly treating the int as the index in the particular intset, 

This message was sent by Atlassian JIRA

View raw message