--- /usr/lib/python2.6/site-packages/sfa/managers/aggregate_manager_max_patched9.py 2013-05-22 12:21:49.221316309 -0400 +++ /usr/lib/python2.6/site-packages/sfa/managers/aggregate_manager_max.py 2013-06-03 10:51:36.471317798 -0400 @@ -198,6 +198,9 @@ class AggregateManagerMax (AggregateMana elif vlan[1] == 'FAILED' or vlan[1] == 'UNKNOWN': res['geni_status'] = 'failed' res['geni_error'] = vlan[2] + elif vlan[1] == 'CANCELLED': + res['geni_status'] = 'failed' + res['geni_error'] = 'VLAN cancelled by rollback from contingent failure' else: res['geni_status'] = 'changing' resources.append(res) @@ -252,10 +255,12 @@ class AggregateManagerMax (AggregateMana raise ExistingRecord(slice_id) elif output.find("Rspec parsing failed") > 0 or output.find("Rspec needs to have rspecName") > 0: raise InvalidRSpec(slice_id) + elif output.find("AxisFault") > 0: + raise SfaAPIError("Unknown AM internal error") elif output.find("Status => FAILED") > 0: errmsg = re.search("Message => ([^\n]+)", output) if errmsg == None: - raise SfaAPIError('Unknown AM internal failure') + raise SfaAPIError('Unknown internal failure') if errmsg.group(1) != None: raise SfaAPIError(errmsg.group(1)) elif output.find("Exception") > 0: