I'm adding Cinder to this bug report since this is arguably a bug in the
PUT /attachments/{id} API since the connector dict is per compute host,
so shoving the mountpoint down in the host connector dict is confusing
and wrong IMO - the mountpoint is per volume attachment, so it should be
a top-level field on the volume attachment itself.

Making that change to the PUT /attachments/{id} request format would be
a microversion change though so I'm just documenting it here for a
future enhancement.

** Also affects: cinder
   Importance: Undecided
       Status: New

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

Title:
  Volume attach sets mountpoint as /dev/na in Cinder attachment

Status in Cinder:
  New
Status in OpenStack Compute (nova):
  Triaged

Bug description:
  The Nova volume attachment is causing the device / mount point of the
  volume attachment in Cinder to be set to /dev/na.

  The Trove gate is doing the following steps, though it could probably
  be recreated with a simple volume attach:

  1. Spawn instance with ephemeral disk and specify a BDM to attach an existing 
volume:
  {"os:scheduler_hints": {"group": "20a9dce8-529a-4b1e-ae10-683a372e3868"}, 
"server": {"name": "TEST_2017_12_11__22_09_04", "imageRef": 
"cf82cd3d-af85-4f0c-933b-a43a2b70a26f", "availability_zone": "nova", 
"flavorRef": "16", "block_device_mapping": [{"volume_size": "1", "volume_id": 
"77369a12-92e1-42d4-be95-6f26910b193a", "delete_on_termination": "1", 
"device_name": "vdb"}],
  Trove log link [1]

  2. Detach the volume.
  3. Resize the volume.
  4. Attach the volume back to the instance
  Nova log link [2]
  5. Call to get volume attachments using Cinder API / cinderclient.  Code 
pointer [3]

  At this point the 'device' field in the attachment returned by Cinder
  is /dev/na.

  This 'na' value is a default in Cinder if the 'mountpoint' is not
  passed in on the connector in attachment_update (code [4]).

  So its likely that the attachment update that is occurring during the
  volume attach is not passing in the mountpoint on the connector.

  [1] http://logs.openstack.org/30/527230/1/check/legacy-trove-scenario-
  dsvm-mysql-single/811c93b/logs/screen-tr-
  tmgr.txt.gz#_Dec_11_22_09_10_585733

  [2] http://logs.openstack.org/30/527230/1/check/legacy-trove-scenario-
  dsvm-mysql-
  single/811c93b/logs/screen-n-cpu.txt.gz?#_Dec_11_22_30_10_353894

  [3] 
https://github.com/openstack/trove/blob/master/trove/taskmanager/models.py#L1369-L1371
  [4] 
https://github.com/openstack/cinder/blob/55b2f349514fce1ffde5fd2244cfc26d7daad6a6/cinder/volume/manager.py#L4396

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to