Removing a relation from the environment fails

Bug #1072433 reported by Gary Poster
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-gui
Invalid
Critical
Unassigned

Bug Description

To dupe:
get trunk as of revno 208. Connect to trunk rapi-delta looking at the sample.json file. In the environment view, click on any of the relationship names. Confirm that you want to delete the relationship.

What happens:
The relation line turns orange. Then you see a notification in the notification area saying that the removal failed. The relation never returns to being black until the environment fully redraws. Rapidelta logs report the following error:

2012-10-28 20:22:31,604 juju.rapi.ws:INFO Process message {"op":"remove_relation","endpoint_a":"wordpress:db","endpoint_b":"mysql:db","request_id":17}
2012-10-28 20:22:31,604 juju.rapi.ws:INFO Invoking method <bound method APIContext.remove_relation of <juju.rapi.context.APIContext object at 0x1b529d0>> with {u'endpoint_a': u'wordpress:db', u'endpoint_b': u'mysql:db'}
2012-10-28 20:22:31,605 juju.rapi.ws:INFO Returning results {u'endpoint_a': u'wordpress:db', u'endpoint_b': u'mysql:db', 'log': [], 'err': True, 'failure': 'Traceback (most recent call last):\n File "/home/gary/gui/rapi-delta/juju/rapi/context.py", line 198, in remove_relation\n (endpoint_a, endpoint_b))\n File "/home/gary/gui/rapi-delta/juju/rapi/context.py", line 76, in _invoke\n d = maybeDeferred(func, *args, **kw)\n File "/home/gary/gui/rapi-delta/dev/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 134, in maybeDeferred\n result = f(*args, **kw)\n File "/home/gary/gui/rapi-delta/dev/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 1187, in unwindGenerator\n return _inlineCallbacks(None, gen, Deferred())\n--- <exception caught here> ---\n File "/home/gary/gui/rapi-delta/dev/local/lib/python2.7/site-packages/twisted/internet/defer.py", line 1045, in _inlineCallbacks\n result = g.send(result)\n File "/home/gary/gui/rapi-delta/juju/rapi/cmd/remove_relation.py", line 12, in remove_relation\n raise NoMatchingEndpoints()\njuju.state.errors.NoMatchingEndpoints: No matching endpoints\n', 'request_id': 17, 'op': u'remove_relation'}

What should happen:
 - If there is a server error, the relationship line should turn black again when we hear about it.
 - We should really not see a server error here, of course. It seems we are specifying the relationship endpoints incorrectly.

I'm marking this critical because it potentially affects our user testing.

Tags: regression
Revision history for this message
Madison Scott-Clary (makyo) wrote :

I'm unable to reproduce this, but I may be doing it wrong. Trunk looks to be at 208, not 210. Is there a different branch where I can try this?

Gary Poster (gary)
description: updated
Revision history for this message
Gary Poster (gary) wrote :

Hey Matt. Thanks for looking at this.

Your branch had revno 210, and trunk has revno 208. I see the problem in both branches. I corrected the bug description to show the correct trunk revno.

I just made a fresh trunk checkout to be paranoid, and still saw the problem.

In case I'm doing something wrong on my side or in case it helps you dupe the problem, here are the details of what I'm running. They are what you'd expect, afaik.

= Rapi delta =

  revno: 616
  parent branch: bzr+ssh://bazaar.launchpad.net/~hazmat/juju/rapi-delta/
  startup: ./dev/bin/python improv.py -f sample.json

= gui =

  revno: 208
  parent branch: bzr+ssh://bazaar.launchpad.net/+branch/juju-gui/
  startup: make server

= browser =

Quantal chromium (Version 22.0.1229.94 Ubuntu 12.10 (161065))

Gary Poster (gary)
Changed in juju-gui:
status: Triaged → Invalid
Revision history for this message
Gary Poster (gary) wrote :

Self-inflicted wound: I had hacked rapi-delta for debugging something a few weeks back and forgotten to undo it. Sorry for the noise.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.