Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-5988

UIMA-DUCC: JD fails due to not finding Workitem type in the CAS

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 3.0.0-Ducc
    • DUCC
    • None

    Description

      The JD throws the following exception:

      Feb 14, 2019 9:51:02 AM org.apache.uima.ducc.test.randomsleep.FixedSleepCR getNext(328)
      INFO: getNext
      org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator class org.apache.uima.ducc.CasHelper requires Type org.apache.uima.ducc.Workitem, which was not found in the CAS.
      at org.apache.uima.ducc.CasHelper.getId(CasHelper.java:47)
      at org.apache.uima.ducc.user.jd.JdUserCollectionReader._getJdUserMetaCas(JdUserCollectionReader.java:169)
      at org.apache.uima.ducc.user.jd.JdUserCollectionReader.getJdUserMetaCas(JdUserCollectionReader.java:147)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
      at java.lang.reflect.Method.invoke(Method.java:508)
      at org.apache.uima.ducc.container.common.classloader.ContextSwitch.call(ContextSwitch.java:42)
      at org.apache.uima.ducc.container.jd.classload.ProxyJobDriverCollectionReader.getMetaCas(ProxyJobDriverCollectionReader.java:171)
      at org.apache.uima.ducc.container.jd.cas.CasManager.getMetaCas(CasManager.java:74)

       

      To make things worse the above exception is ignored by JD code and the job continues until completion giving a false sense of positive completion. The Duccmon shows no errors.

      Two fixes are needed:

      1) Address the missing Workitem type in the cas

      2) Improve error handling to detect an exception and cancel a job

      The above error is caused by a recent change in CasHelper.java. Ducc examples have not been updated to define Workitem type in descriptors. Also the getId() method does not throw Exception leaving JD oblivious to an error which may happen there.

      Attachments

        Activity

          People

            cwiklik Jaroslaw Cwiklik
            cwiklik Jaroslaw Cwiklik
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: