[ 
https://issues.apache.org/jira/browse/MESOS-1865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15241321#comment-15241321
 ] 

Neil Conway commented on MESOS-1865:
------------------------------------

An HTTP redirect makes sense to me as well.

Which of the 3xx status codes to use seems open to debate. 301 makes sense, 
although clients are not supposed to automatically follow the redirect for 
PUT/POST requests. 308 allows clients to follow the redirect automatically for 
all types of requests -- but I'm not sure how widely implemented 308 is just 
yet.

> Redirect to the leader master when current master is not a leader
> -----------------------------------------------------------------
>
>                 Key: MESOS-1865
>                 URL: https://issues.apache.org/jira/browse/MESOS-1865
>             Project: Mesos
>          Issue Type: Bug
>          Components: json api
>    Affects Versions: 0.20.1
>            Reporter: Steven Schlansker
>            Assignee: haosdent
>
> Some of the API endpoints, for example /master/tasks.json, will return bogus 
> information if you query a non-leading master:
> {code}
> [steven@Anesthetize:~]% curl 
> http://master1.mesos-vpcqa.otenv.com:5050/master/tasks.json | jq . | head -n 
> 10
> {
>   "tasks": []
> }
> [steven@Anesthetize:~]% curl 
> http://master2.mesos-vpcqa.otenv.com:5050/master/tasks.json | jq . | head -n 
> 10
> {
>   "tasks": []
> }
> [steven@Anesthetize:~]% curl 
> http://master3.mesos-vpcqa.otenv.com:5050/master/tasks.json | jq . | head -n 
> 10
> {
>   "tasks": [
>     {
>       "executor_id": "",
>       "framework_id": "20140724-231003-419644938-5050-1707-0000",
>       "id": 
> "pp.guestcenterwebhealthmonitor.606cd6ee-4b50-11e4-825b-5212e05f35db",
>       "name": 
> "pp.guestcenterwebhealthmonitor.606cd6ee-4b50-11e4-825b-5212e05f35db",
>       "resources": {
>         "cpus": 0.25,
>         "disk": 0,
> {code}
> This is very hard for end-users to work around.  For example if I query 
> "which master is leading" followed by "leader: which tasks are running" it is 
> possible that the leader fails over in between, leaving me with an incorrect 
> answer and no way to know that this happened.
> In my opinion the API should return the correct response (by asking the 
> current leader?) or an error (500 Not the leader?) but it's unacceptable to 
> return a successful wrong answer.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to