Description of problem: When creating a share using a private share from other tenant, i.e. the tenant has no access to the share type, as expected it failed with 404, but the share stuck on "creating" status. Version-Release number of selected component (if applicable): puppet-manila-15.4.1-0.20200403160104.e41b1b6.el8ost.noarch python3-manilaclient-1.29.0-0.20200310223441.1b2cafb.el8ost.noarch How reproducible: 100% Steps to Reproduce: 1. Create private share type on tenant "A". 2. Create a share on tenant "B" using the share type from tenant "A" by non-admin user Actual results: Share stuck on "creating" status Expected results: The share should not reach the creation process. The share should not be listed in manila list. Additional info: On tenant "A": (overcloud) [stack@undercloud-0 ~]$ manila type-list +--------------------------------------+---------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | ID | Name | visibility | is_default | required_extra_specs | optional_extra_specs | Description | +--------------------------------------+---------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | 696b41dc-22f2-4ae6-9996-66dba5ff2a26 | private | private | - | driver_handles_share_servers : False | | None | +--------------------------------------+---------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ (overcloud) [stack@undercloud-0 ~]$ manila type-access-list 696b41dc-22f2-4ae6-9996-66dba5ff2a26 +------------+ | Project_ID | +------------+ +------------+ On tenant "B": (overcloud) [stack@undercloud-0 ~]$ manila create --name share_member_user cephfs 1 --share-type private ERROR: ShareTypeNotFound: Share type 696b41dc-22f2-4ae6-9996-66dba5ff2a26 could not be found. (HTTP 404) (Request-ID: req-2a9cf901-98fe-42af-9319-b57276e528a2) (.venv) (overcloud) [stack@undercloud-0 ~]$ manila list +--------------------------------------+-------------------+------+-------------+----------+-----------+-----------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+-------------------+------+-------------+----------+-----------+-----------------+------+-------------------+ | 988854b1-5797-4b6b-9ca9-1ff5bedcf872 | share_member_user | 1 | CEPHFS | creating | False | private | | None | +--------------------------------------+-------------------+------+-------------+----------+-----------+-----------------+------+-------------------+
Hi, A user not belonging to a project should never have access to a private share type. I tested this in a vanilla OpenStack deployment, and these are the steps I used, with my command outputs pasted below: == Credentials == 1) Create three OpenStack users "demo", "alt_demo" and "admin" 2) Create two OpenStack projects "demo" and "alt_demo" 3) Assign the "admin" user to both projects, that has default access to create and manipulate share types 4) Assign "demo" user to the "demo" project 5) Assign "alt_demo" user to the "alt_demo" project == Test setup == 6) As "admin" user, Create a private share type, allow access to "demo" project 7) As "demo" user of "demo" project, attempt to use the share type. This will succeed 8) As "alt_demo" user of the "alt_demo" project, attempt to use the share type, this will fail. Here's the outputs for steps 6, 7, 8 on my environment: stack@ostk-train:~$ manila type-create --is-public False demo-project-private-share-type False +----------------------+--------------------------------------+ | Property | Value | +----------------------+--------------------------------------+ | ID | dfe0931f-3c25-41e1-928d-431b25592360 | | Name | demo-project-private-share-type | | Visibility | private | | is_default | - | | required_extra_specs | driver_handles_share_servers : False | | optional_extra_specs | | | Description | None | +----------------------+--------------------------------------+ stack@ostk-train:~$ manila type-access-list demo-project-private-share-type +------------+ | Project_ID | +------------+ +------------+ stack@ostk-train:~$ openstack project list | grep demo | 34591ab4bef14c019a38da006f22b982 | alt_demo | | f0bb75f9ea664cc8b83fff46c6535bcd | demo | stack@ostk-train:~$ manila type-access-add demo-project-private-share-type f0bb75f9ea664cc8b83fff46c6535bcd stack@ostk-train:~$ manila type-access-list demo-project-private-share-type +----------------------------------+ | Project_ID | +----------------------------------+ | f0bb75f9ea664cc8b83fff46c6535bcd | +----------------------------------+ stack@ostk-train:~$ source devstack/openrc demo demo stack@ostk-train:~$ manila type-show demo-project-private-share-type +----------------------+--------------------------------------------+ | Property | Value | +----------------------+--------------------------------------------+ | id | dfe0931f-3c25-41e1-928d-431b25592360 | | name | demo-project-private-share-type | | visibility | private | | is_default | NO | | description | None | | required_extra_specs | driver_handles_share_servers : False | | optional_extra_specs | snapshot_support : False | | | create_share_from_snapshot_support : False | | | revert_to_snapshot_support : False | | | mount_snapshot_support : False | +----------------------+--------------------------------------------+ stack@ostk-train:~$ source devstack/openrc alt_demo alt_demo stack@ostk-train:~$ manila type-show demo-project-private-share-type ERROR: No sharetype with a name or ID of 'demo-project-private-share-type' exists. stack@ostk-train:~$ manila type-show dfe0931f-3c25-41e1-928d-431b25592360 ERROR: No sharetype with a name or ID of 'dfe0931f-3c25-41e1-928d-431b25592360' exists. stack@ostk-train:~$ manila create nfs 1 --share-type dfe0931f-3c25-41e1-928d-431b25592360 ERROR: Share type not found. (HTTP 404) (Request-ID: req-8d3cff44-6274-4bb3-b732-6a8f5e3a5fb6) stack@ostk-train:~$ manila create nfs 1 --share-type demo-project-private-share-type ERROR: ShareTypeNotFound: Share type dfe0931f-3c25-41e1-928d-431b25592360 could not be found. (HTTP 404) (Request-ID: req-e620570d-b8a4-4f97-9842-3ee3ca8d33fc) To ensure that python-manilaclient isn't tricking us, we can see what's being sent to the API via debug commands, when we get that 404: Request with share type name: REQ: curl -i -X POST http://10.10.10.10/share/v2/34591ab4bef14c019a38da006f22b982/shares -H "X-Auth-Token: gAAAAABe-7wwS1BMimRZtbSYh6taETAwGnGTlIWCtitgIxmDr01gUnlVmBWPnCifNcCeSswSPddeRXWDdbaa291-evoNf3TesrF94mC0SvMoWIgSxg6As8J8CtvLmAMUV2R3uXkNQCHmf0WQ0_cDDnKFLuPE6_nX3sDQPbgIGYHizxhUw-lTAGo" -H "X-Openstack-Manila-Api-Version: 2.55" -H "User-Agent: python-manilaclient" -H "Accept: application/json" -H "Content-Type: application/json" -d '{"share": {"size": 1, "snapshot_id": null, "name": null, "description": null, "metadata": {}, "share_proto": "nfs", "share_network_id": null, "share_type": "demo-project-private-share-type", "is_public": false, "availability_zone": null}}' Request with share type ID: REQ: curl -i -X POST http://10.10.10.10/share/v2/34591ab4bef14c019a38da006f22b982/shares -H "X-Auth-Token: gAAAAABe-7uUrWeyEGNpAkcj1xgZl8DmA_hgKlY0hJuXpTBiQg3NxqWssXIdXr7n3CNhz7kVI0_pqm1_EpdckDhTeQubGzTV4ZIJOFeF9YDOaZqsc7eLrqhBGfc1rkIaGTnvvG7wvnZOBV_70zcyUvXdBzqqeameaH2kW9z4aOgIS0mUcSXrnpE" -H "X-Openstack-Manila-Api-Version: 2.55" -H "User-Agent: python-manilaclient" -H "Accept: application/json" -H "Content-Type: application/json" -d '{"share": {"size": 1, "snapshot_id": null, "name": null, "description": null, "metadata": {}, "share_proto": "nfs", "share_network_id": null, "share_type": "dfe0931f-3c25-41e1-928d-431b25592360", "is_public": false, "availability_zone": null}}'
Can you please check your environment again?
Please see below my stesps: On admin project by admin user: =============================== # Create project_a: (overcloud) [stack@undercloud-0 ~]$ openstack project create project_a +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | | | domain_id | default | | enabled | True | | id | 8c988874e83543cf8b155cf9cfd1356f | | is_domain | False | | name | project_a | | options | {} | | parent_id | default | | tags | [] | +-------------+----------------------------------+ # Create user user_a on project_a (overcloud) [stack@undercloud-0 ~]$ openstack user create --project project_a --password redhat user_a +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | default_project_id | 8c988874e83543cf8b155cf9cfd1356f | | domain_id | default | | enabled | True | | id | 7dde343f6ff24f59ba67ce38da3ef9a7 | | name | user_a | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ # Assign member role to user_a user (overcloud) [stack@undercloud-0 ~]$ openstack role add --user user_a --project project_a member # Create private share type on admin project (overcloud) [stack@undercloud-0 ~]$ manila type-create --is-public False admin-private-share-type False +----------------------+--------------------------------------+ | Property | Value | +----------------------+--------------------------------------+ | ID | c4ef9a32-b143-4c56-ba71-0a45f4d5848f | | Name | admin-private-share-type | | Visibility | private | | is_default | - | | required_extra_specs | driver_handles_share_servers : False | | optional_extra_specs | | | Description | None | +----------------------+--------------------------------------+ (overcloud) [stack@undercloud-0 ~]$ manila type-access-list c4ef9a32-b143-4c56-ba71-0a45f4d5848f +------------+ | Project_ID | +------------+ +------------+ On project_a by user_a user: ============================ # Although the share type does not exist, try to create share with it (overcloud) [stack@undercloud-0 ~]$ manila type-show c4ef9a32-b143-4c56-ba71-0a45f4d5848f ERROR: No sharetype with a name or ID of 'c4ef9a32-b143-4c56-ba71-0a45f4d5848f' exists. (overcloud) [stack@undercloud-0 ~]$ manila create --name share_member_user cephfs 1 --share-type admin-private-share-type ERROR: ShareTypeNotFound: Share type c4ef9a32-b143-4c56-ba71-0a45f4d5848f could not be found. (HTTP 404) (Request-ID: req-72638ebe-5a98-448f-941f-fdc7b402982c) # As you can see, share stuck on "creating" status. The list should be empty. (overcloud) [stack@undercloud-0 ~]$ manila list +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+ | 86c8143a-f134-407f-9541-6bc00007dc5f | share_member_user | 1 | CEPHFS | creating | False | admin-private-share-type | | None | +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+ # Now let's try to create a share by share type that does not exist at all. # Works as expected. (overcloud) [stack@undercloud-0 ~]$ manila create --name share_member_user cephfs 1 --share-type no_exist ERROR: Share type not found. (HTTP 404) (Request-ID: req-b3d7fa42-b4ba-4535-80b3-110afa4dc33c) (overcloud) [stack@undercloud-0 ~]$ manila list +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+ | 86c8143a-f134-407f-9541-6bc00007dc5f | share_member_user | 1 | CEPHFS | creating | False | admin-private-share-type | | None | +--------------------------------------+-------------------+------+-------------+----------+-----------+--------------------------+------+-------------------+
OK, can reproduce this one downstream and in upstream Manila on master branch where I get this traceback in the API service log: Jul 01 12:30:05 ubuntu-devstack devstack[34413]: INFO manila.api.openstack.wsgi [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] POST http://192.168.121.177/share/v2/c5b3159f5d8c48788338ea822a4bc80f/shares Jul 01 12:30:05 ubuntu-devstack devstack[34413]: DEBUG manila.api.openstack.wsgi [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] Action: 'create', calling method: Controller.__getattribute__.<locals>.version_select, body: {"share": {"size": 1, "snapshot_id": null, "name": "share_member_user", "description": null, "metadata": {}, "share_proto": "nfs", "share_network_id": null, "share_type": "admin-private-share-type", "is_public": false, "availability_zone": null}} {{(pid=34414) _process_stack /opt/stack/manila/manila/api/openstack/wsgi.py:797}} Jul 01 12:30:05 ubuntu-devstack devstack[34413]: INFO manila.api.v1.shares [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] Create NFS share of 1 GB Jul 01 12:30:05 ubuntu-devstack devstack[34413]: DEBUG manila.quota [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] Created reservations ['a286abf6-8f78-4520-b522-060bf8c646ad', '8fd5ca41-4d2f-48eb-94ec-e30cd886a6d7', 'ad50bcf8-4e02-4a80-a4c3-2e8beeb83399', 'c1facf22-e697-439d-b9f7-c314d98066ab'] {{(pid=34414) reserve /opt/stack/manila/manila/quota.py:922}} Jul 01 12:30:05 ubuntu-devstack devstack[34413]: DEBUG manila.quota [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] Committed reservations ['a286abf6-8f78-4520-b522-060bf8c646ad', '8fd5ca41-4d2f-48eb-94ec-e30cd886a6d7', 'ad50bcf8-4e02-4a80-a4c3-2e8beeb83399', 'c1facf22-e697-439d-b9f7-c314d98066ab'] {{(pid=34414) commit /opt/stack/manila/manila/quota.py:950}} Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault [None req-d8b0dcd6-3f6c-42e5-8845-9b3de74304f8 None None] Caught error: Share type 3fa43a72-ab56-4b9f-b302-ff6e961ea667 could not be found.: manila.exception.ShareTypeNotFound: Share type 3fa43a72-ab56-4b9f-b302-ff6e961ea667 could not be found. Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault Traceback (most recent call last): Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/middleware/fault.py", line 77, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return req.get_response(self.application) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1314, in send Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault application, catch_exc_info=False) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1278, in call_application Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault app_iter = application(self.environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 129, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault resp = self.call_func(req, *args, **kw) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 193, in call_func Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return self.func(req, *args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/oslo_middleware/base.py", line 124, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault response = req.get_response(self.application) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1314, in send Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault application, catch_exc_info=False) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1278, in call_application Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault app_iter = application(self.environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 143, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return resp(environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 129, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault resp = self.call_func(req, *args, **kw) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 193, in call_func Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return self.func(req, *args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/keystonemiddleware/auth_token/__init__.py", line 341, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault response = req.get_response(self._app) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1314, in send Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault application, catch_exc_info=False) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/request.py", line 1278, in call_application Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault app_iter = application(self.environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 143, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return resp(environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 143, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return resp(environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/routes/middleware.py", line 141, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault response = self.app(environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 143, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return resp(environ, start_response) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 129, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault resp = self.call_func(req, *args, **kw) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/usr/local/lib/python3.6/dist-packages/webob/dec.py", line 193, in call_func Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return self.func(req, *args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/openstack/wsgi.py", line 766, in __call__ Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault content_type, body, accept) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/openstack/wsgi.py", line 830, in _process_stack Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault action_result = self.dispatch(meth, request, action_args) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/openstack/wsgi.py", line 925, in dispatch Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return method(req=request, **action_args) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/openstack/wsgi.py", line 1068, in version_select Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return func.func(self, *args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/v2/shares.py", line 184, in create Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault check_availability_zones_extra_spec=True) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/openstack/wsgi.py", line 1162, in wrapper Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return f(self, req, *args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/api/v1/shares.py", line 412, in _create Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/share/api.py", line 361, in create Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault snapshot_host=snapshot_host) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/share/api.py", line 446, in create_instance Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault snapshot_host=snapshot_host)) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/share/api.py", line 544, in create_share_instance_and_get_request_spec Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault context, share_instance['share_type_id']) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/db/api.py", line 1034, in share_type_get Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return IMPL.share_type_get(context, type_id, inactive, expected_fields) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/db/sqlalchemy/api.py", line 171, in wrapper Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault return f(*args, **kwargs) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/db/sqlalchemy/api.py", line 4232, in share_type_get Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault expected_fields=expected_fields) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault File "/opt/stack/manila/manila/db/sqlalchemy/api.py", line 4216, in _share_type_get Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault raise exception.ShareTypeNotFound(share_type_id=id) Jul 01 12:30:05 ubuntu-devstack devstack[34413]: ERROR manila.api.middleware.fault manila.exception.ShareTypeNotFound: Share type 3fa43a72-ab56-4b9f-b302-ff6e961ea667 could not be found.
Updated the title since the issue is reproducible with other backends than native CephFS too.
I found out that this issue only happens when the share type name is used for creating the share. Creating a share using share type id works as expected.
Verified, tested on: puppet-manila-15.4.1-0.20200403160104.e41b1b6.el8ost.noarch python3-manilaclient-1.29.0-0.20200310223441.1b2cafb.el8ost.noarch On tenant A: ============ (overcloud) [stack@undercloud-0 ~]$ manila type-list --all +--------------------------------------+------------+------------+------------+--------------------------------------+-------------------------+-------------+ | ID | Name | visibility | is_default | required_extra_specs | optional_extra_specs | Description | +--------------------------------------+------------+------------+------------+--------------------------------------+-------------------------+-------------+ | 13af1a5f-9b57-4f0f-bff1-53cd7349ac21 | st_private | private | - | driver_handles_share_servers : False | | None | | 6eee21d1-93fa-491e-a02e-76b1e3a0bee1 | default | public | YES | driver_handles_share_servers : False | snapshot_support : True | None | +--------------------------------------+------------+------------+------------+--------------------------------------+-------------------------+-------------+ (overcloud) [stack@undercloud-0 ~]$ manila type-access-list 13af1a5f-9b57-4f0f-bff1-53cd7349ac21 +------------+ | Project_ID | +------------+ +------------+ On tenant B: =========== (overcloud) [stack@undercloud-0 ~]$ manila create cephfs 1 --share-type 13af1a5f-9b57-4f0f-bff1-53cd7349ac21 ERROR: Share type not found. (HTTP 404) (Request-ID: req-9c7395e9-74ec-42ed-a838-3ed6e8beb06a) (overcloud) [stack@undercloud-0 ~]$ manila list +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+ +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+ (overcloud) [stack@undercloud-0 ~]$ manila list --all +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | Project ID | +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+------------+ +----+------+------+-------------+--------+-----------+-----------------+------+-------------------+------------+
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Red Hat OpenStack Platform 16.1 bug fix and enhancement advisory), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2020:4284