'Save updates to this instance group.'

@base.remotable
def save(self):

    updates = self.obj_get_changes()
    if ('hosts' in updates):
        raise exception.InstanceGroupSaveException(field='hosts')
    if (not updates):
        return
    payload = dict(updates)
    payload['server_group_id'] = self.uuid
    try:
        db_group = self._save_in_db(self._context, self.uuid, updates)
    except exception.InstanceGroupNotFound:
        db.instance_group_update(self._context, self.uuid, updates)
        db_group = db.instance_group_get(self._context, self.uuid)
    self._from_db_object(self._context, self, db_group)
    compute_utils.notify_about_server_group_update(self._context, 'update', payload)
