Hi I filed this under https://bugs.launchpad.net/horizon/+bug/1247752
and commented out the the 'else' of the 'if marker is not None:' branch in _format_project_list to fix this on my installation. <code> def _format_project_list(self, tenant_refs, **kwargs): marker = kwargs.get('marker') first_index = 0 if marker is not None: for (marker_index, tenant) in enumerate(tenant_refs): if tenant['id'] == marker: # we start pagination after the marker first_index = marker_index + 1 Break # else: # msg = 'Marker could not be found' # raise exception.ValidationError(message=msg) limit = kwargs.get('limit') last_index = None </> But I have no clue whats the exact problem i¹m encountering here. Greetings Sebastian -- Sebastian Porombka, M.Sc. Zentrum für Informations- und Medientechnologien (IMT) Universität Paderborn E-Mail: porom...@uni-paderborn.de Tel.: 05251/60-5999 Fax: 05251/60-48-5999 Raum: N5.314 -------------------------------------------- Q: Why is this email five sentences or less? A: http://five.sentenc.es Please consider the environment before printing this email. Von: Dolph Mathews <dolph.math...@gmail.com> Antworten an: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org> Datum: Donnerstag, 31. Oktober 2013 17:19 An: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org> Betreff: Re: [openstack-dev] [horizon / keystone] Marker could not be found? > > >On Thu, Oct 31, 2013 at 8:38 AM, Sebastian Porombka ><porom...@uni-paderborn.de> wrote: > >Hello Folks. > >I have a problem after grizzly->havana migration where i¹m unable to >rescue myself. >When I open the "Admin -> Resource-Usage View i get no results only a >red error box with the message "Error: Unable to retrieve tenant list.³. > >Horizon log: >[Thu Oct 31 11:39:44 2013] [error] Creating a new keystoneclient >connection to http://$controller:35357/v2.0. >[Thu Oct 31 11:39:44 2013] [error] REQ: curl -i -X GET >http://$controller:35357/v2.0/tenants?marker=tenant_marker&limit=21 -H >"User-Agent: python-keystoneclient" -H "Forwarded: >for=131.234.5.178;by=python-keystoneclient" > -H "X-Auth-Token: 82[Š]f46" >[Thu Oct 31 11:39:44 2013] [error] REQ: curl -i -X GET >http://$controller:35357/v2.0/tenants?marker=tenant_marker&limit=21 -H >"User-Agent: python-keystoneclient" -H "Forwarded: >for=131.234.5.178;by=python-keystoneclient" > -H "X-Auth-Token: 82[Š]46" >[Thu Oct 31 11:39:44 2013] [error] INFO:urllib3.connectionpool:Starting >new HTTP connection (1): $controller >[Thu Oct 31 11:39:44 2013] [error] DEBUG:urllib3.connectionpool:"GET >/v2.0/tenants?marker=tenant_marker&limit=21 HTTP/1.1" 400 88 >[Thu Oct 31 11:39:44 2013] [error] RESP: [400] >CaseInsensitiveDict({'date': 'Thu, 31 Oct 2013 11:39:47 GMT', 'vary': >'X-Auth-Token', 'content-length': '88', 'content-type': >'application/json'}) >[Thu Oct 31 11:39:44 2013] [error] RESP BODY: {"error": {"message": >"Marker could not be found", "code": 400, "title": "Bad Request"}} >[Thu Oct 31 11:39:44 2013] [error] >[Thu Oct 31 11:39:44 2013] [error] RESP: [400] >CaseInsensitiveDict({'date': 'Thu, 31 Oct 2013 11:39:47 GMT', 'vary': >'X-Auth-Token', 'content-length': '88', 'content-type': >'application/json'}) >[Thu Oct 31 11:39:44 2013] [error] RESP BODY: {"error": {"message": >"Marker could not be found", "code": 400, "title": "Bad Request"}} >[Thu Oct 31 11:39:44 2013] [error] >[Thu Oct 31 11:39:44 2013] [error] Request returned failure status: 400 >[Thu Oct 31 11:39:44 2013] [error] Request returned failure status: 400 >[Thu Oct 31 11:39:44 2013] [error] Recoverable error: Marker could not be >found (HTTP 400) > > >Keystone Log: >2013-10-31 12:39:47.352 17187 DEBUG routes.middleware [-] Matched GET >/tenants __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:100 >2013-10-31 12:39:47.352 17187 DEBUG routes.middleware [-] Route path: >'{path_info:.*}', defaults: {'controller': ><keystone.contrib.ec2.routers.Ec2Extension object at 0x4156f10>} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:102 >2013-10-31 12:39:47.352 17187 DEBUG routes.middleware [-] Match dict: >{'controller': <keystone.contrib.ec2.routers.Ec2Extension object at >0x4156f10>, 'path_info': '/tenants'} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:103 >2013-10-31 12:39:47.353 17187 DEBUG routes.middleware [-] Matched GET >/tenants __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:100 >2013-10-31 12:39:47.353 17187 DEBUG routes.middleware [-] Route path: >'{path_info:.*}', defaults: {'controller': ><keystone.contrib.s3.core.S3Extension object at 0x4156cd0>} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:102 >2013-10-31 12:39:47.353 17187 DEBUG routes.middleware [-] Match dict: >{'controller': <keystone.contrib.s3.core.S3Extension object at >0x4156cd0>, 'path_info': '/tenants'} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:103 >2013-10-31 12:39:47.354 17187 DEBUG routes.middleware [-] Matched GET >/tenants __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:100 >2013-10-31 12:39:47.354 17187 DEBUG routes.middleware [-] Route path: >'{path_info:.*}', defaults: {'controller': ><keystone.contrib.admin_crud.core.CrudExtension object at 0x41517d0>} >__call__ /usr/lib/python2.7/dist-packages/routes/middleware.py:102 >2013-10-31 12:39:47.355 17187 DEBUG routes.middleware [-] Match dict: >{'controller': <keystone.contrib.admin_crud.core.CrudExtension object at >0x41517d0>, 'path_info': '/tenants'} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:103 >2013-10-31 12:39:47.355 17187 DEBUG routes.middleware [-] Matched GET >/tenants __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:100 >2013-10-31 12:39:47.355 17187 DEBUG routes.middleware [-] Route path: >'{path_info:.*}', defaults: {'controller': ><keystone.common.wsgi.ComposingRouter object at 0x4151e50>} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:102 >2013-10-31 12:39:47.356 17187 DEBUG routes.middleware [-] Match dict: >{'controller': <keystone.common.wsgi.ComposingRouter object at >0x4151e50>, 'path_info': '/tenants'} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:103 >2013-10-31 12:39:47.356 17187 DEBUG routes.middleware [-] Matched GET >/tenants __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:100 >2013-10-31 12:39:47.357 17187 DEBUG routes.middleware [-] Route path: >'/tenants', defaults: {'action': u'get_all_projects', 'controller': ><keystone.identity.controllers.Tenant object at 0x4151ed0>} __call__ > /usr/lib/python2.7/dist-packages/routes/middleware.py:102 >2013-10-31 12:39:47.357 17187 DEBUG routes.middleware [-] Match dict: >{'action': u'get_all_projects', 'controller': ><keystone.identity.controllers.Tenant object at 0x4151ed0>} __call__ >/usr/lib/python2.7/dist-packages/routes/middleware.py:103 >2013-10-31 12:39:47.357 17187 DEBUG dogpile.core.dogpile [-] >NeedRegenerationException _enter >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:94 >2013-10-31 12:39:47.358 17187 DEBUG dogpile.core.dogpile [-] no value, >waiting for create lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:127 >2013-10-31 12:39:47.358 17187 DEBUG dogpile.core.dogpile [-] value >creation lock <dogpile.cache.region._LockWrapper object at 0x4fc77d0> >acquired _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:131 >2013-10-31 12:39:47.358 17187 DEBUG dogpile.core.dogpile [-] Calling >creation function _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:148 >2013-10-31 12:39:47.362 17187 DEBUG dogpile.core.dogpile [-] Released >creation lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:154 >2013-10-31 12:39:47.362 17187 DEBUG dogpile.core.dogpile [-] >NeedRegenerationException _enter >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:94 >2013-10-31 12:39:47.362 17187 DEBUG dogpile.core.dogpile [-] no value, >waiting for create lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:127 >2013-10-31 12:39:47.362 17187 DEBUG dogpile.core.dogpile [-] value >creation lock <dogpile.cache.region._LockWrapper object at 0x4fc7bd0> >acquired _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:131 >2013-10-31 12:39:47.363 17187 DEBUG dogpile.core.dogpile [-] Calling >creation function _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:148 >2013-10-31 12:39:47.365 17187 DEBUG dogpile.core.dogpile [-] Released >creation lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:154 >2013-10-31 12:39:47.366 17187 DEBUG dogpile.core.dogpile [-] >NeedRegenerationException _enter >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:94 >2013-10-31 12:39:47.366 17187 DEBUG dogpile.core.dogpile [-] no value, >waiting for create lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:127 >2013-10-31 12:39:47.366 17187 DEBUG dogpile.core.dogpile [-] value >creation lock <dogpile.cache.region._LockWrapper object at 0x4fc7bd0> >acquired _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:131 >2013-10-31 12:39:47.366 17187 DEBUG dogpile.core.dogpile [-] Calling >creation function _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:148 >2013-10-31 12:39:47.369 17187 DEBUG dogpile.core.dogpile [-] Released >creation lock _enter_create >/usr/lib/python2.7/dist-packages/dogpile/core/dogpile.py:154 > >2013-10-31 12:39:47.373 17187 WARNING keystone.common.wsgi [-] Marker >could not be found >2013-10-31 12:39:47.373 17187 INFO access [-] 131.234.5.178 - - >[31/Oct/2013:11:39:47 +0000] "GET >http://$controller:35357/v2.0/tenants?marker=tenant_marker&limit=21 >HTTP/1.0" 400 88 > > >I have the following (ubuntu packaged) version of the possible involved >components of openstack: > >root@$controller:/# dpkg -l | grep keystone >ii keystone 1:2013.2-0ubuntu1~cloud0 > OpenStack identity service - Daemons >ii python-keystone 1:2013.2-0ubuntu1~cloud0 > OpenStack identity service - Python library >ii python-keystoneclient 1:0.3.2-0ubuntu1~cloud0 > Client library for OpenStack Identity API > > >root@$dashboard:/# dpkg -l | grep openstack >ii openstack-dashboard 1:2013.2~rc3-0ubuntu1~cloud0 >django web interface to Openstack >ii python-openstack-auth 1.1.1-0ubuntu1~cloud0 A >django authentication backend for Openstack > > >What could get wrong? > >Thanks! >Sebastian > >-- >Sebastian Porombka, M.Sc. >Zentrum für Informations- und Medientechnologien (IMT) >Universität Paderborn > >E-Mail: porom...@uni-paderborn.de >Tel.: 05251/60-5999 >Fax: 05251/60-48-5999 >Raum: N5.314 > >-------------------------------------------- >Q: Why is this email five sentences or less? >A: http://five.sentenc.es > >Please consider the environment before printing this email. > > > >_______________________________________________ >OpenStack-dev mailing list >OpenStack-dev@lists.openstack.org >http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > > > > > >Can you open a bug with the above, and file it against both horizon and >python-keystoneclient? It looks like a variable substitution isn't >occurring as expected ("tenant_marker" should probably be a value), but >it's difficult to tell where exactly the problem > lies without further investigation. > >-- > >-Dolph _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev