Activity log for bug #1701324

Date Who What changed Old value New value Message
2017-06-29 16:52:28 Dmitry Stepanenko bug added bug
2017-06-29 16:52:41 Dmitry Stepanenko tags federation
2017-06-29 16:52:49 Dmitry Stepanenko keystone: assignee Dmitry Stepanenko (dstepanenko)
2017-06-29 16:55:43 Dmitry Stepanenko description In commit eed233cac8f34ce74a2f6fa989c484773c491df3 "Concrete role assignments for federated users" there was added handling of federation-related objects. In that implementation objects like roles, projects and domains were aggregated from 2 sources - from appropriate tables directly and from federation-related hooks. This mechanism can lead to situation when there's duplication of objects, so for such cases code for filtering out duplicates was added. It was impemented in the following way: domains = [dict(t) for t in set([tuple(d.items()) for d in domains])] where domains is a list of dicts, each of which contains information about appropriate domain. This code can work fine in some situations but in general can work in a wrong way because dict "items" method returns key-value pairs in arbitrary order according to https://docs.python.org/2/library/stdtypes.html#dict.items. So, this code may remain unchanged list of 2 similar dicts where items listed out in a different order. This code was introduced in upstream Thu Feb 25 21:39:15 2016. In commit eed233cac8f34ce74a2f6fa989c484773c491df3 "Concrete role assignments for federated users" there was added handling of federation-related objects. In that implementation objects like roles, projects and domains were aggregated from 2 sources - from appropriate tables directly and from federation-related hooks. This mechanism can lead to situation when there's duplication of objects, so for such cases code for filtering out duplicates was added. It was impemented in the following way: domains = [dict(t) for t in set([tuple(d.items()) for d in domains])] where domains is a list of dicts, each of which contains information about appropriate domain. This code can work fine in some situations but in general can work in a wrong way because dict "items" method returns key-value pairs in arbitrary order according to https://docs.python.org/2/library/stdtypes.html#dict.items. So, this code may remain unchanged list of 2 similar dicts where items listed out in a different order. This code was introduced in upstream Thu Feb 25 21:39:15 2016, so it seems that this code remains in newton and ocata and master branch.
2017-06-29 18:17:04 Lance Bragstad keystone: status New Invalid
2017-06-30 14:26:39 Dmitry Stepanenko keystone: status Invalid New
2017-07-14 12:52:21 OpenStack Infra keystone: status New In Progress
2017-07-25 21:27:47 Lance Bragstad keystone: status In Progress Incomplete
2017-07-27 15:19:55 Dmitry Stepanenko keystone: status Incomplete In Progress
2017-08-01 16:10:34 Lance Bragstad keystone: importance Undecided Medium
2017-08-16 01:31:22 OpenStack Infra keystone: assignee Dmitry Stepanenko (dstepanenko) Lance Bragstad (lbragstad)
2017-08-16 20:40:55 Lance Bragstad keystone: milestone pike-rc2
2017-08-16 21:04:39 OpenStack Infra keystone: status In Progress Fix Released
2017-08-17 04:55:11 OpenStack Infra tags federation federation in-stable-pike