designate tempest plugin tests fail with default quota_zones setting

Bug #1800454 reported by Pavlo Shchelokovskyy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Designate
Fix Released
Undecided
Pavlo Shchelokovskyy

Bug Description

When designate is configured with default setting for zone quotas (10) various tests from designate-tempest-plugin fail due to over quota.

I see that designate devstack plugin hard-sets the default quotas for zones in designate to 100 instead of 10 (default for this config option in service) and thus tests do not fail on upstream gates, however this makes running them against a production deployed OpenStack cloud too fragile.

We should make the tests smarter in this regard.

Example failure:

designate_tempest_plugin.tests.api.v2.test_recordset_validation.RecordsetValidationTest.test_update_invalid_8_TXT[id-1164c826-dceb-4557-9a22-7d65c4a4f5f4]
----------------------------------------------------------------------------------------------------------------------------------------------------------

Captured traceback:
~~~~~~~~~~~~~~~~~~~
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/ddt.py", line 139, in wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py", line 85, in test_update_invalid
post_model = data_utils.make_rand_recordset(self.zone['name'], rtype)
File "/usr/local/lib/python2.7/dist-packages/designate_tempest_plugin/tests/api/v2/test_recordset_validation.py", line 55, in zone
resp, body = self.zones_client.create_zone(**zone_data)
File "/usr/local/lib/python2.7/dist-packages/designate_tempest_plugin/services/dns/json/base.py", line 40, in wrapper
return f(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/designate_tempest_plugin/services/dns/v2/json/zones_client.py", line 49, in create_zone
resp, body = self._create_request('zones', zone, params=params)
File "/usr/local/lib/python2.7/dist-packages/designate_tempest_plugin/services/dns/json/base.py", line 127, in _create_request
extra_headers=extra_headers)
File "/usr/local/lib/python2.7/dist-packages/tempest/lib/common/rest_client.py", line 279, in post
return self.request('POST', url, extra_headers, headers, body, chunked)
File "/usr/local/lib/python2.7/dist-packages/tempest/lib/common/rest_client.py", line 668, in request
self._error_checker(resp, resp_body)
File "/usr/local/lib/python2.7/dist-packages/tempest/lib/common/rest_client.py", line 800, in _error_checker
raise exceptions.OverLimit(resp_body, resp=resp)
tempest.lib.exceptions.OverLimit: Request entity is too large
Details:

{u'code': 413, u'type': u'over_quota', u'request_id': u'req-558a928d-bec9-4cb6-b496-b82b045ed79c'}

description: updated
Revision history for this message
Pavlo Shchelokovskyy (pshchelo) wrote :

It seems that at least the test_in recordset_validation.py is to blame. It creates zone for each test but does not clean them up after the test. As a result, tests in this class leave behind zones that saturate the small default quota).

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to designate-tempest-plugin (master)

Fix proposed to branch: master
Review: https://review.openstack.org/613919

Changed in designate:
assignee: nobody → Pavlo Shchelokovskyy (pshchelo)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to designate-tempest-plugin (master)

Reviewed: https://review.openstack.org/613919
Committed: https://git.openstack.org/cgit/openstack/designate-tempest-plugin/commit/?id=fd1eb9bbbcb721b4f8e7021219b5bdbd7c104ccb
Submitter: Zuul
Branch: master

commit fd1eb9bbbcb721b4f8e7021219b5bdbd7c104ccb
Author: Pavlo Shchelokovskyy <email address hidden>
Date: Mon Oct 29 14:22:59 2018 +0200

    Delete created zone in recordset validation tests

    these tests create zones as part of test but do not clean them up
    afterwards. This leads to these and following tests in the thread
    to fail with overquota when default zone quota is sufficiently low.

    Change-Id: I07d1781de84336faa76698895ad5198ae1c259fc
    Closes-Bug: #1800454

Changed in designate:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/designate-tempest-plugin 0.6.0

This issue was fixed in the openstack/designate-tempest-plugin 0.6.0 release.

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.