See <https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/52/> ------------------------------------------ [...truncated 1276 lines...] File "<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/glance/common/client.py",> line 63, in wrapped return func(self, *args, **kwargs) File "<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/glance/common/client.py",> line 444, in do_request headers=headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/glance/common/client.py",> line 80, in wrapped return func(self, method, url, body, headers) File "<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/glance/common/client.py",> line 574, in _do_request raise exception.Invalid(res.read()) Invalid: 400 Bad Request The server could not comply with the request since it is either malformed or otherwise incorrect. Unrecognized changes-since value routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x48d5d90>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x48d5d90>} glance.api.policy: DEBUG: Loaded policy rules: {u'default': []} glance.common.client: DEBUG: Constructed URL: http://0.0.0.0:9191/images/detail?changes-since=2011-09-05 routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x455ea50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x455ea50>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list glance.registry.client: DEBUG: Registry request GET /images/detail HTTP 200 request id req-c373f9a3-4c1f-46bb-9626-629ee4c66df7 --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: Tests that the /images/detail registry API returns list of ---------------------------------------------------------------------- Traceback (most recent call last): File "<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/glance/tests/unit/v1/test_api.py",> line 1409, in test_get_details_filter_changes_since self.assertEquals(res.status_int, 400) AssertionError: 200 != 400
raise self.failureException, \ (None or '%r != %r' % (200, 400))
-------------------- >> begin captured logging << -------------------- glance.store: DEBUG: Attempting to import store glance.store.filesystem.Store glance.store: DEBUG: Registering store <class 'glance.store.filesystem.Store'> with schemes ('file', 'filesystem') glance.store.base: DEBUG: Late loading location class glance.store.filesystem.StoreLocation glance.store.location: DEBUG: Registering scheme file with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store.location: DEBUG: Registering scheme filesystem with {'store_class': <class 'glance.store.filesystem.Store'>, 'location_class': <class 'glance.store.filesystem.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.http.Store glance.store: DEBUG: Registering store <class 'glance.store.http.Store'> with schemes ('http', 'https') glance.store.base: DEBUG: Late loading location class glance.store.http.StoreLocation glance.store.location: DEBUG: Registering scheme http with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store.location: DEBUG: Registering scheme https with {'store_class': <class 'glance.store.http.Store'>, 'location_class': <class 'glance.store.http.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.rbd.Store glance.store: DEBUG: Registering store <class 'glance.store.rbd.Store'> with schemes ('rbd',) glance.store.base: DEBUG: Late loading location class glance.store.rbd.StoreLocation glance.store.location: DEBUG: Registering scheme rbd with {'store_class': <class 'glance.store.rbd.Store'>, 'location_class': <class 'glance.store.rbd.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.s3.Store glance.store.s3: ERROR: Could not find s3_store_host in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.s3.Store'> with schemes ('s3', 's3+http', 's3+https') glance.store.base: DEBUG: Late loading location class glance.store.s3.StoreLocation glance.store.location: DEBUG: Registering scheme s3 with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+http with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store.location: DEBUG: Registering scheme s3+https with {'store_class': <class 'glance.store.s3.Store'>, 'location_class': <class 'glance.store.s3.StoreLocation'>} glance.store: DEBUG: Attempting to import store glance.store.swift.Store glance.store.swift: ERROR: Could not find swift_store_auth_address in configuration options. glance.store.base: ERROR: Failed to configure store correctly. Disabling add method. glance.store: DEBUG: Registering store <class 'glance.store.swift.Store'> with schemes ('swift+https', 'swift', 'swift+http') glance.store.base: DEBUG: Late loading location class glance.store.swift.StoreLocation glance.store.location: DEBUG: Registering scheme swift+https with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift+http with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} glance.store.location: DEBUG: Registering scheme swift with {'store_class': <class 'glance.store.swift.Store'>, 'location_class': <class 'glance.store.swift.StoreLocation'>} routes.middleware: DEBUG: Initialized with method overriding = True, and path info altering = True routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2013-11-06T06:11:33Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'33', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'06', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'06' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'33' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2013-11-08T06:11:33Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'33', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'08', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'08' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'33' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2013-11-09T06:11:33+01:00 into {'tz_sign': u'+', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'+01:00', 'second': u'33', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'09', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'09' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'33' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2013-11-09T06:11:33-01:00 into {'tz_sign': u'-', 'second_fraction': None, 'hour': u'06', 'tz_hour': u'01', 'month': u'11', 'timezone': u'-01:00', 'second': u'33', 'tz_minute': u'00', 'year': u'2013', 'separator': u'T', 'day': u'09', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'01' for 'tz_hour' with default None iso8601.iso8601: DEBUG: Got u'00' for 'tz_minute' with default None iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'09' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'33' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2013-11-10T06:11:33Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'06', 'tz_hour': None, 'month': u'11', 'timezone': u'Z', 'second': u'33', 'tz_minute': None, 'year': u'2013', 'separator': u'T', 'day': u'10', 'minute': u'11'} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'2013' for 'year' with default None iso8601.iso8601: DEBUG: Got u'11' for 'month' with default None iso8601.iso8601: DEBUG: Got u'10' for 'day' with default None iso8601.iso8601: DEBUG: Got u'06' for 'hour' with default None iso8601.iso8601: DEBUG: Got u'11' for 'minute' with default None iso8601.iso8601: DEBUG: Got u'33' for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Matched GET /images/detail routes.middleware: DEBUG: Route path: '/images/detail', defaults: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} routes.middleware: DEBUG: Match dict: {'action': u'detail', 'controller': <glance.common.wsgi.Resource object at 0x56c3f50>} iso8601.iso8601: DEBUG: Parsed 2011-09-05 into {'tz_sign': None, 'second_fraction': None, 'hour': None, 'tz_hour': None, 'month': u'09', 'timezone': None, 'second': None, 'tz_minute': None, 'year': u'2011', 'separator': None, 'day': u'05', 'minute': None} with default timezone <iso8601.iso8601.Utc object at 0x19566d0> iso8601.iso8601: DEBUG: Got u'2011' for 'year' with default None iso8601.iso8601: DEBUG: Got u'09' for 'month' with default None iso8601.iso8601: DEBUG: Got u'05' for 'day' with default None iso8601.iso8601: DEBUG: Got None for 'hour' with default None iso8601.iso8601: DEBUG: Got None for 'minute' with default None iso8601.iso8601: DEBUG: Got None for 'second' with default None glance.registry.api.v1.images: INFO: Returning detailed image list --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- XML: nosetests.xml Slowest 5 tests took 73.94 secs: [31m 16.50 TestGlanceControl.test_bouncing[0m [31m 14.86 TestScrubber.test_delayed_delete[0m [31m 14.31 TestBinGlanceCacheManage.test_queue[0m [31m 14.24 TestGlanceControl.test_reload[0m [31m 14.02 TestGlanceControl.test_respawn[0m ---------------------------------------------------------------------- Ran 932 tests in 633.113s FAILED (SKIP=89, failures=2) ERROR: InvocationError: '<https://jenkins01.openstack.org/job/periodic-glance-python26-stable-folsom/ws/.tox/py26/bin/nosetests'> ___________________________________ summary ____________________________________ ERROR: py26: commands failed + result=1 + echo 'Begin pip freeze output from test virtualenv:' Begin pip freeze output from test virtualenv: + echo ====================================================================== ====================================================================== + .tox/py26/bin/pip freeze Babel==1.3 Jinja2==2.7.1 MarkupSafe==0.18 Paste==1.7.5.1 PasteDeploy==1.5.0 Pygments==1.6 Routes==1.13 SQLAlchemy==0.7.9 Sphinx==1.2b1 Tempita==0.5.1 WebOb==1.0.8 amqp==1.3.2 anyjson==0.3.3 argparse==1.2.1 boto==2.1.1 cffi==0.7.2 colorama==0.2.7 coverage==3.7 decorator==3.4.0 distribute==0.7.3 docutils==0.10 eventlet==0.14.0 glance==jenkins-periodic-glance-python26-stable-folsom-52 greenlet==0.4.1 httplib2==0.8 importlib==1.0.2 iso8601==0.1.8 jsonschema==2.3.0 kombu==3.0.3 lxml==3.2.3 mox==0.5.3 nose==1.3.0 nose-exclude==0.1.10 nosehtmloutput==0.0.5 openstack.nose-plugin==0.11 ordereddict==1.1 passlib==1.6.1 pep8==1.1 pycparser==2.10 pycrypto==2.6.1 pysendfile==2.0.0 python-swiftclient==1.8.0 pytz==2013.8 repoze.lru==0.6 requests==2.0.1 simplejson==3.3.1 sqlalchemy-migrate==0.7.2 termcolor==1.1.0 wsgiref==0.1.2 xattr==0.7.2 + echo ====================================================================== ====================================================================== + '[' -d .testrepository ']' + sudo /usr/local/jenkins/slave_scripts/jenkins-sudo-grep.sh post + sudoresult=0 + '[' 0 -ne 0 ']' + /usr/local/jenkins/slave_scripts/jenkins-oom-grep.sh post + oomresult=0 + '[' 0 -ne 0 ']' ++ find . -name nose_results.html + htmlreport=./nose_results.html + '[' -f ./nose_results.html ']' ++ grep -c 'tr class=.passClass' ./nose_results.html + passcount=95 + '[' 95 -eq 0 ']' + exit 1 + rm -rf /tmp/tmp.CgBuMoWLbh Build step 'Execute shell' marked build as failure [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python26-stable-folsom/52 [SCP] uploading file: '/srv/static/logs/periodic/periodic-glance-python26-stable-folsom/52/nose_results.html' [SCP] Connecting to static.openstack.org [SCP] Trying to create /srv/static/logs/periodic/periodic-glance-python26-stable-folsom/centos6-3/52 [SCP] Copying console log.