You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Marco Massenzio (JIRA)" <ji...@apache.org> on 2015/10/09 19:07:05 UTC
[jira] [Comment Edited] (MESOS-3556) mesos.cli broken in 0.24.x
[ https://issues.apache.org/jira/browse/MESOS-3556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950492#comment-14950492 ]
Marco Massenzio edited comment on MESOS-3556 at 10/9/15 5:06 PM:
-----------------------------------------------------------------
PR merged.
New version ({{0.1.5}}) uploaded to PyPi.
was (Author: marco-mesos):
PR merged.
> mesos.cli broken in 0.24.x
> --------------------------
>
> Key: MESOS-3556
> URL: https://issues.apache.org/jira/browse/MESOS-3556
> Project: Mesos
> Issue Type: Bug
> Components: cli
> Affects Versions: 0.24.0, 0.24.1
> Reporter: Radoslaw Gruchalski
> Assignee: Marco Massenzio
> Labels: mesosphere
>
> The issue was initially reported on the mailing list: http://www.mail-archive.com/user@mesos.apache.org/msg04670.html
> The format of the master data stored in zookeeper has changed but the mesos.cli does not reflect these changes causing tools like {{mesos-tail}} and {{mesos-ps}} to fail.
> Example error from {{mesos-tail}}:
> {noformat}
> mesos-master ~$ mesos tail -f -n 50 service
> Traceback (most recent call last):
> File "/usr/local/bin/mesos-tail", line 11, in <module>
> sys.exit(main())
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/cli.py", line 61, in
> wrapper
> return fn(*args, **kwargs)
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/cmds/tail.py", line
> 55, in main
> args.task, args.file, fail=(not args.follow)):
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/cluster.py", line 27,
> in files
> tlist = MASTER.tasks(fltr)
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/master.py", line 174,
> in tasks
> self._task_list(active_only))))
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/master.py", line 153,
> in _task_list
> *[util.merge(x, *keys) for x in self.frameworks(active_only)])
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/master.py", line 185,
> in frameworks
> return util.merge(self.state, *keys)
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/util.py", line 58, in
> __get__
> value = self.fget(inst)
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/master.py", line 123,
> in state
> return self.fetch("/master/state.json").json()
> File "/usr/local/lib/python2.7/dist-packages/mesos/cli/master.py", line 64,
> in fetch
> return requests.get(urlparse.urljoin(self.host, url), **kwargs)
> File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 69, in get
> return request('get', url, params=params, **kwargs)
> File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 50, in
> request
> response = session.request(method=method, url=url, **kwargs)
> File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 451,
> in request
> prep = self.prepare_request(req)
> File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 382,
> in prepare_request
> hooks=merge_hooks(request.hooks, self.hooks),
> File "/usr/local/lib/python2.7/dist-packages/requests/models.py", line 304,
> in prepare
> self.prepare_url(url, params)
> File "/usr/local/lib/python2.7/dist-packages/requests/models.py", line 357,
> in prepare_url
> raise InvalidURL(*e.args)
> requests.exceptions.InvalidURL: Failed to parse:
> 10.100.1.100:5050","port":5050,"version":"0.24.1"}
> {noformat}
> The problem exists in https://github.com/mesosphere/mesos-cli/blob/master/mesos/cli/master.py#L107. The code should be along the lines of:
> {noformat}
> try:
> parsed = json.loads(val)
> return parsed["address"]["ip"] + ":" + str(parsed["address"]["port"])
> except Exception:
> return val.split("@")[-1]
> {noformat}
> This causes the master address to come back correctly.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)