Class Policy's _build_conn_params method return wrong value

Bug #1530504 reported by junxu
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
senlin
Fix Released
Undecided
Unassigned

Bug Description

Class Policy's _build_conn_params method return wrong value, which result openstack driver connection failed.

2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/network/v2/_proxy.py", line 703, in find_pool
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base ignore_missing=ignore_missing)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/proxy.py", line 93, in _find
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base ignore_missing=ignore_missing)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 932, in find
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return cls.get_by_id(session, name_or_id, path_args=path_args)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 629, in get_by_id
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base include_headers=include_headers)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 596, in get_data_by_id
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base response = session.get(url, endpoint_filter=cls.service)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 518, in get
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.request(url, 'GET', **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/_utils.py", line 180, in inner
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return func(*args, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 324, in request
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base auth_headers = self.get_auth_headers(auth)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 578, in get_auth_headers
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return auth.get_headers(self, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/plugin.py", line 84, in get_headers
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base token = self.get_token(session)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 89, in get_token
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.get_access(session).auth_token
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 135, in get_access
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base self.auth_ref = self.get_auth_ref(session)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py", line 181, in get_auth_ref
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self._plugin.get_auth_ref(session, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/v3/base.py", line 166, in get_auth_ref
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base authenticated=False, log=False, **rkwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 526, in post
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.request(url, 'POST', **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/_utils.py", line 180, in inner
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return func(*args, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 421, in request
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base raise exceptions.from_response(resp, method, url)
*** InternalServerError: InternalServerError(u'An unexpected error prevented the server from fulfilling your request: (ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near \') AND trust.deleted_at IS NULL \\n LIMIT 1\' at line 3") \'SELECT trust.id AS trust_id, trust.trustor_user_id AS trust_trustor_user_id, trust.trustee_user_id AS trust_trustee_user_id, trust.project_id AS trust_project_id, trust.impersonation AS trust_impersonation, trust.deleted_at AS trust_deleted_at, trust.expires_at AS trust_expires_at, trust.remaining_uses AS trust_remaining_uses, trust.extra AS trust_extra \\nFROM trust \\nWHERE trust.id = %s AND trust.deleted_at IS NULL \\n LIMIT %s\' ([u\'6f28ef25664b4f26b112722822bec949\'], 1) (Disable debug mode to suppress these details.) (HTTP 500) (Request-ID: req-96b248ca-d953-4a3f-a7a5-0b82bdbed7d1)',)

Revision history for this message
junxu (xujun-1) wrote :

This is cause by _build_conn_params method of class Policy which return 'trust_id' item as a list.

Revision history for this message
Yanyan Hu (yanyanhu) wrote :

Just make a test and didn't find this error. Both list and a single trust_id is acceptable for openstacksdk I think.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to senlin (master)

Reviewed: https://review.openstack.org/262941
Committed: https://git.openstack.org/cgit/openstack/senlin/commit/?id=7c8ce15d5550a9267a6449b2d11ad7de5ddc2504
Submitter: Jenkins
Branch: master

commit 7c8ce15d5550a9267a6449b2d11ad7de5ddc2504
Author: Jun, Xu <email address hidden>
Date: Sat Jan 2 05:56:15 2016 +0000

    Using [trust_id] in '_build_conn_params'

    Unify the using of trust_id in this project, In profile module
    we use trust_id, while in receiver and policy module we use
    [trust_id].

    Closes-Bug: 1530504
    Change-Id: Icc2e5bc8df8c86b9f14b2a198aa416979a451f04

Changed in senlin:
status: New → Fix Released
Revision history for this message
Thierry Carrez (ttx) wrote : Fix included in openstack/senlin 1.0.0.0b3

This issue was fixed in the openstack/senlin 1.0.0.0b3 development milestone.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.