You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@reef.apache.org by "Chenxi Zhao (JIRA)" <ji...@apache.org> on 2018/06/05 17:54:00 UTC

[jira] [Created] (REEF-2032) DriverStatusHTTPHandler causes timeout to Http Request if there is no Driver status change

Chenxi Zhao created REEF-2032:
---------------------------------

             Summary: DriverStatusHTTPHandler causes timeout to Http Request if there is no Driver status change
                 Key: REEF-2032
                 URL: https://issues.apache.org/jira/browse/REEF-2032
             Project: REEF
          Issue Type: Bug
          Components: REEF Bridge, REEF Driver
            Reporter: Chenxi Zhao


As a HTTP Handler, it should response to every HTTP request to the endpoint "driverstatus/v1". 

 

However, instead of recording the current Driver status, in DriverStatusHTTPHandler, it uses a queue to only save the change. If there is no change in Driver status, every HTTP requests will timeout. 

 

The problem is in:

[https://github.com/apache/reef/blob/master/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/DriverStatusHTTPHandler.java#L154]

 

 Reproduce:
 # Modify HelloTask - add a while loop to print "Hello, REEF!" to prevent driver from exiting.
 # Send HTTP request "http://IP:Port/driverstatus/v1" to query driver status multiple times.

 

Observation:
 # I am able to see Driver Status "INIT", "RUNNING"
 # From this point on, all HTTP requests to this handler will timeout, unless Driver status changes again.

 

Expectation:

HTTP server should response with current Driver status at anytime.

 

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)