Details
-
Improvement
-
Status: Resolved
-
Minor
-
Resolution: Won't Fix
-
2.9.0SDK
-
None
Description
This Jira describes a possible approach to automatically recovering from an error condition, which might be implemented.
Sometimes, the sofa feature of a FS which is a subtype of AnnotationBase is missing (is null) when the FS is being added to the indexes of some particular CAS View. One way this can happen is during (lenient) deserialization of XMI or XCAS CASes, after some update has occurred to the type system, which changes a type from not being a subtype of AnnotationBase, to having that as a supertype.
In this case (where the sofa reference is null), instead of throwing an exception, set the sofa reference to the likely proper value - the sofa that corresponds to the view it is being indexed in. If there is no sofa for that view (unlikely but possible), throw an exception.
If this recovery is done, output a diminishing frequency log message about it.