[openstack-dev] [horizon / keystone] Marker could not be found?
Lyle, David
david.lyle at hp.com
Mon Nov 25 16:27:38 UTC 2013
This is indeed a bug in the Horizon code base. The use of marker in the API call is incorrect in this case. This should be fixed in i-1.
-David
> -----Original Message-----
> From: Sebastian Porombka [mailto:porombka at uni-paderborn.de]
> Sent: Monday, November 25, 2013 7:15 AM
> To: OpenStack Development Mailing List (not for usage questions)
> Subject: Re: [openstack-dev] [horizon / keystone] Marker could not be
> found?
>
> 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: porombka at 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.mathews at gmail.com>
> Antworten an: "OpenStack Development Mailing List (not for usage
> questions)" <openstack-dev at lists.openstack.org>
> Datum: Donnerstag, 31. Oktober 2013 17:19
> An: "OpenStack Development Mailing List (not for usage questions)"
> <openstack-dev at 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
> ><porombka at 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: porombka at 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 at 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 at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list