You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by "Jerry Cwiklik (JIRA)" <de...@uima.apache.org> on 2017/03/07 00:33:32 UTC
[jira] [Closed] (UIMA-5342) UIMA-DUCC: implement a new driver with
support for pluggable task allocation component
[ https://issues.apache.org/jira/browse/UIMA-5342?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jerry Cwiklik closed UIMA-5342.
-------------------------------
Resolution: Fixed
Assignee: Jerry Cwiklik
Modified AE uniqueName in PerformanceMetrics to strip thread index. This enables the WS to show aggregate/collapsed view of metrics for scaled AEs.
Added a new job spec 1.dd.sync.job and a corresponding deployment descriptor to test scaled, sync aggregate.
> UIMA-DUCC: implement a new driver with support for pluggable task allocation component
> --------------------------------------------------------------------------------------
>
> Key: UIMA-5342
> URL: https://issues.apache.org/jira/browse/UIMA-5342
> Project: UIMA
> Issue Type: New Feature
> Components: DUCC
> Reporter: Jerry Cwiklik
> Assignee: Jerry Cwiklik
> Fix For: 2.2.1-Ducc
>
>
> Implement a new embeddable driver component which will deliver Work Items to services that use GET/ACK/END protocol. This protocol is currently used between a JP and JD. Its a pull based, synchronous request/response exchange with a JP being a requestor.
> The new Driver will enable an application to plug in a callback listener which will implement the following interface:
> public interface TaskAllocatorCallbackListener {
> public String getSerializedCAS(TaskConsumer taskConsumer);
>
> public void onTaskSuccess(TaskConsumer taskConsumer, IPerformanceMetrics metrics);
>
> public void onTaskFailure(TaskConsumer taskConsumer, String stringifiedException);
> }
> The Driver will call getSerializedCAS() when it receives a GET request from a remote service, The method must return a serializedCAS or null if there are none available. The TaskConsumer argument identifies where the CAS will be processed [ host, pid, thread id, service type ].
> The Driver will call onTaskSuccess() when it receives END from a remote service and processing of a CAS succeeded. In addition to TaskConsumer argument, the IPerformanceMetrics instance will be passed in which will contains performance breakdown.
> The Driver will call onTaskFailure() when it receives END from a remote service and processing of a CAS failed. In addition to TaskConsumer argument, a serialized exception (String) will be passed in to identify the cause of failure.
> The Driver assumes that the TaskAllocatorCallbackListener implementation will catch and handle its errors and none will be rethrown.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)