[
https://issues.apache.org/jira/browse/UIMA-838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12574741#action_12574741
]
Burn Lewis commented on UIMA-838:
---------------------------------
The current implementation takes the action when the threshold is reached (0 =>
no threshold, so ignore errors & 1 => no errors permitted so stop on first
error.) But the wondow is not a sliding one, as the count of accumulated errors
is reset every 'thresholdWindow' CASes.
I agree that thresholds are usually crossed, but if we change the
implementation so -1 => no threshold (an infinite number of errors permitted)
then would it be confusing to continue to use 0 to mean no timeout and no
window.
Can we instead talk about a threshold at which the error action is taken,
rather than a threshold for taking no action, e.g.
The thresholdCount and thresholdWindow attributes specify the threshold
at which the thresholdAction is taken.
If xxx errors occur within a window of size yyy, the framework takes
the specified
action of either disabling this delegate, or terminating the containing
AS Aggregate
(or if not an AS Aggregate, terminating the AS Primitive).
A thresholdCount of 0 has the special meaning of no-threshold (errors
ignored),
and a thresholdWindow of 0 means no-window (all errors are counted.)
I think it helps to describe the special values here, before the defaults
section.
> Incorrect support for process CAS error threshold count and threshold window
> -----------------------------------------------------------------------------
>
> Key: UIMA-838
> URL: https://issues.apache.org/jira/browse/UIMA-838
> Project: UIMA
> Issue Type: Bug
> Components: Async Scaleout
> Reporter: Burn Lewis
> Attachments: uimaj-as-core-UIMA-838-patch.txt
>
>
> The thresholdAction should be taken when the number of CAS errors reaches the
> thresholdCount value within the last thresholdWindow CASes. A
> thresholdWindow of 0 means an infinite window, so the action is taken when
> the total number of errors reaches the thresholdCount. A thresholdCount of 0
> means an infinite limit, errors are ignored. A thresholdCount of 1 means
> that the first error triggers the action, hence the action must be taken when
> the threshold is REACHED, not exceeded as stated in the current docs.
> (Although thresholds usually apply when exceeded, making the thresholdCount
> be the number permitted would require using a value such as -1 for no
> threshold, in contrast to our use of 0 to mean no timeout and no window)
> It should be an error to specify a (non-zero) thresholdWindow that is smaller
> than the thresholdCount ... an impossible situation.
> Note that if thresholdCount = 1 the thresholdWindow value is irrelevant, and
> if thresholdCount = thresholdWindow the action is taken when that many
> consecutive errors occur.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.