← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1577459] [NEW] Incorrect conditional / assignment in SolidFireDriver

 

Public bug reported:

References below are in
https://git.openstack.org/cgit/openstack/cinder/tree/cinder/volume/drivers/solidfire.py#n351


In _init_volume_mappings (line 341):
            if v.get('provider_id', 'nil') != sfvol['volumeID']:  <-- This value does not match the value that provider_id gets updated to 4 lines down
                    v['provider_id'] == sfvol['volumeID']
                    updates.append(
                        {'id': v['id'],
                         'provider_id': self._create_provider_id_string(  <-- Above, it should check if provider_id matches this value
                             sfvol['volumeID'], sfvol['accountID'])})


This should be like it is in _init_snapshot_mappings (line 323):

                id_string = self._create_provider_id_string( <-- First save the provider string to a variable
                    sfsnap['snapshotID'],
                    sfsnap['volumeID'])
                if s.get('provider_id') != id_string: <-- check the value here
                    updates.append(
                        {'id': s['id'],
                         'provider_id': id_string}) <-- and assign the same value here if they don't match above

** Affects: cinder
     Importance: Undecided
     Assignee: Yosef Hoffman (yh128t)
         Status: New

** Changed in: horizon
     Assignee: (unassigned) => Yosef Hoffman (yh128t)

** Project changed: horizon => cinder

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Dashboard (Horizon).
https://bugs.launchpad.net/bugs/1577459

Title:
  Incorrect conditional / assignment in SolidFireDriver

Status in Cinder:
  New

Bug description:
  References below are in
  https://git.openstack.org/cgit/openstack/cinder/tree/cinder/volume/drivers/solidfire.py#n351

  
  In _init_volume_mappings (line 341):
              if v.get('provider_id', 'nil') != sfvol['volumeID']:  <-- This value does not match the value that provider_id gets updated to 4 lines down
                      v['provider_id'] == sfvol['volumeID']
                      updates.append(
                          {'id': v['id'],
                           'provider_id': self._create_provider_id_string(  <-- Above, it should check if provider_id matches this value
                               sfvol['volumeID'], sfvol['accountID'])})


  
  This should be like it is in _init_snapshot_mappings (line 323):

                  id_string = self._create_provider_id_string( <-- First save the provider string to a variable
                      sfsnap['snapshotID'],
                      sfsnap['volumeID'])
                  if s.get('provider_id') != id_string: <-- check the value here
                      updates.append(
                          {'id': s['id'],
                           'provider_id': id_string}) <-- and assign the same value here if they don't match above

To manage notifications about this bug go to:
https://bugs.launchpad.net/cinder/+bug/1577459/+subscriptions