REST API list-running Jobs

Comments

9 comments

  • Gido

    Just tried via

    curl --insecure -u admin:admin -X GET "https://`hostname`:8443/rest/jobs/list-running"

    and found it working properly. 

    Can you double check via Browser UI that the specific user is able to login? 

    0
    Comment actions Permalink
  • Laura Uzcátegui

    Hi Guido, 

    Thanks for getting back quickly. 

    I got same response with Browser UI. 

    Any other idea? 

    Cheers, 

    0
    Comment actions Permalink
  • Gido

    Thanks for the short test.

    Logging in via the user interface should not deliver a JSON response. If you accessing the page 

    https://<host>:8443/login

    with your browser and provide the same credentials as for the REST API call, is possible to access the Datameer UI and see the Datameer File Browser? 

    0
    Comment actions Permalink
  • Laura Uzcátegui

    Hi,

     Still can't find a solution, debugging this I can see : 

      "Transfer-Encoding: chunked" 

     

    1
    Comment actions Permalink
  • Joel Stewart

    I'd recommend reviewing the logs/conductor.log file for any clues about the error message. This could contain more information about why the REST API call is being returned as a failure. 

    1
    Comment actions Permalink
  • Laura Uzcátegui

    Hi Joel, 

    Effectively taking a look to the logs I can see an exception: 

     Error while transaction handling. Do a rollback. 
    org.springframework.web.util.NestedServletException:
    Request processing failed; nested exception is datameer.dap.sdk.util.RestException

    Have you experienced this before ? Or any hint about what could be causing it ? 

     

    0
    Comment actions Permalink
  • Joel Stewart

    Is there any more context around these lines? Usually there is a stacktrace which includes statements starting with "Caused by". These statements tend to point to the root cause. 

    Here is a generic example demonstrating a stacktrace: 

    ERROR [2015-01-01 00:00:00.000] [JobScheduler thread-1] (JobScheduler.java:800) - Job 1234 failed with exception.
    java.lang.RuntimeException: java.lang.RuntimeException: Failed to run cluster job for 'Workbook job (1234): Workbook#Attributes(Group by operation)'
            at datameer.dap.common.graphv2.ConcurrentClusterSession$1.run(ConcurrentClusterSession.java:51)
            at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
            at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
            at java.util.concurrent.FutureTask.run(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
            at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.RuntimeException: Failed to run cluster job for 'Workbook job (1234): Workbook#Attributes(Group by operation)'
            at datameer.dap.common.graphv2.ClusterSession.execute(ClusterSession.java:196)
            at datameer.dap.common.graphv2.ConcurrentClusterSession$1.run(ConcurrentClusterSession.java:48)
            ... 6 more
    Caused by: java.lang.RuntimeException: Job job_201503171121_1154 failed! Failure info: NA
            at datameer.dap.sdk.util.ExceptionUtil.convertToRuntimeException(ExceptionUtil.java:49)
            at datameer.dap.sdk.util.ExceptionUtil.convertToRuntimeException(ExceptionUtil.java:31)
            at datameer.dap.common.graphv2.hadoop.MrJob.runImpl(MrJob.java:197)
            at datameer.dap.common.graphv2.ClusterJob.run(ClusterJob.java:129)
            at datameer.dap.common.graphv2.ClusterSession.execute(ClusterSession.java:189)
            ... 7 more
    Caused by: java.io.IOException: Job job_201503171121_1154 failed! Failure info: NA
            at datameer.dap.common.job.mr.HadoopMrJobClient.waitUntilJobCompletion(HadoopMrJobClient.java:172)
            at datameer.dap.common.job.mr.HadoopMrJobClient.runJobImpl(HadoopMrJobClient.java:76)
            at datameer.dap.common.job.mr.MrJobClient.runJob(MrJobClient.java:34)
            at datameer.dap.common.graphv2.hadoop.MrJob.runImpl(MrJob.java:185)
            ... 9 more
    Caused by: java.lang.RuntimeException: Task: Error: java.lang.ClassNotFoundException: datameer.das.functions.logical.OrFunction$1
            at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
            at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
            at datameer.dap.sdk.plugin.PluginClassLoader.loadClass(PluginClassLoader.java:59)
            at datameer.das.functions.logical.OrFunction.createComputor(OrFunction.java:31)
            at datameer.dap.common.formula.SimpleFunctionExpression.getValueComputor(SimpleFunctionExpression.java:80)
            at datameer.dap.common.formula.SimpleFunctionExpression.computeValue(SimpleFunctionExpression.java:41)
            at datameer.dap.common.graphv2.FilterRecordProcessor$1.apply(FilterRecordProcessor.java:36)
            at datameer.dap.common.graphv2.FilterRecordProcessor$1.apply(FilterRecordProcessor.java:31)
            at datameer.dap.sdk.sequence.Sequence$11.computeNext(Sequence.java:560)
            at datameer.dap.sdk.sequence.Sequence$Simple.moveToNext(Sequence.java:157)
            at datameer.dap.sdk.sequence.Sequence$13.moveToNext(Sequence.java:603)
            at datameer.dap.common.graphv2.hadoop.MrJobKeyValueMapper.run(MrJobKeyValueMapper.java:76)
            at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:706)
            at org.apache.hadoop.mapred.MapTask.run(MapTask.java:351)
            at org.apache.hadoop.mapred.Child$4.run(Child.java:282)
            at java.security.AccessController.doPrivileged(Native Method)
            at javax.security.auth.Subject.doAs(Subject.java:415)
            at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1122)
            at org.apache.hadoop.mapred.Child.main(Child.java:271)
    0
    Comment actions Permalink
  • Laura Uzcátegui

    Here more detail: 

    at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
    at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
    at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:713)
    at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
    Caused by: datameer.dap.sdk.util.RestException
    at datameer.dap.sdk.util.ExceptionUtil.convertToRestException(ExceptionUtil.java:61)
    at datameer.dap.conductor.webapp.controller.rest.RestApiController.renderRunningJobsStatus(RestApiController.java:160)
    at sun.reflect.GeneratedMethodAccessor543.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)

    It could be related to ssl since there is something above about it and I am also getting in stdouterr.log the following: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake

     

     

     

    0
    Comment actions Permalink
  • Joel Stewart

    Thanks for sharing more context from the logs. This message stands out to me here: 

    Caused by: datameer.dap.sdk.util.RestException

    This seems to be that there is some sort of other failure message that may be before or after the actual REST API exception. Perhaps there is a SQL error with pulling in the requested information. Are there any other log messages around that time with FATAL, ERROR or WARN status? 

    If general functionality and other REST API calls are working through SSL, it seems unlikely that there is a problem with the SSL configuration. 

    0
    Comment actions Permalink

Please sign in to leave a comment.