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

Cody Maloney commented on MESOS-1865:
-------------------------------------

Please not 301 "permanent redirect". Browsers cache that for a _long_ time so 
if that leader becomes master again you'll be permanently redirected away...

302 or 307. If we're concerned about breaking "dump" / simple clients than 307 
would seem to make the most sense. The odds are better that simple clients 
wouldn't know about 307 since it's newer, and just report as an error which a 
sysadmin would see in their monitoring tools and be able to fix.

> 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