tox tests occasionally fail on quota tests with "Mismatch Error"

Bug #1294904 reported by Nikhil Manchanda
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack DBaaS (Trove)
Confirmed
Low
Unassigned

Bug Description

When running the tox tests multiple times, the unit tests sometimes fail with a "MismatchError" in File "/mnt/opt/stack/trove/trove/tests/unittests/quota/test_quota.py", line 403, in test_reserve.
I've seen this happen once every 20 runs or so.

Full stacktrace is in included log below:

py27 runtests: commands[1] | python setup.py testr --slowest
running testr
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --list
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpCFpiLm
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpRAM8N9
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpDycmto
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpOS3zfn
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpETAeGv
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpgfN1nf
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmpJIx7Eb
running=${PYTHON:-python} -m subunit.run discover ./trove/tests/unittests --load-list /tmp/tmp4Nxasd
No handlers could be found for logger "trove.guestagent.backup.backupagent"
No handlers could be found for logger "trove.guestagent.api"
No handlers could be found for logger "trove.guestagent.backup.backupagent"
No handlers could be found for logger "trove.guestagent.strategies.storage.swift"
No handlers could be found for logger "trove.guestagent.backup.backupagent"
No handlers could be found for logger "trove.common.template"
No handlers could be found for logger "trove.guestagent.strategies.storage.swift"
No handlers could be found for logger "trove.guestagent.strategies.storage.swift"
======================================================================
FAIL: quota.test_quota.DbQuotaDriverTest.test_reserve
tags: worker-1
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/mnt/opt/stack/trove/trove/tests/unittests/quota/test_quota.py", line 403, in test_reserve
    self.assertEqual(1, kw['usage_id'])
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 321, in assertEqual
    self.assertThat(observed, matcher, message)
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 406, in assertThat
    raise mismatch_error
MismatchError: 1 != 2
======================================================================
FAIL: process-returncode
tags: worker-1
----------------------------------------------------------------------
Binary content:
  traceback (test/plain; charset="utf8")
======================================================================
FAIL: quota.test_quota.DbQuotaDriverTest.test_get_all_quota_usages_by_tenant_with_all_default
tags: worker-0
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/mnt/opt/stack/trove/trove/tests/unittests/quota/test_quota.py", line 347, in test_get_all_quota_usages_by_tenant_with_all_default
    usages[Resource.INSTANCES].resource)
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 321, in assertEqual
    self.assertThat(observed, matcher, message)
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 406, in assertThat
    raise mismatch_error
MismatchError: 'instances' != 'volumes'
======================================================================
FAIL: process-returncode
tags: worker-0
----------------------------------------------------------------------
Binary content:
  traceback (test/plain; charset="utf8")
======================================================================
FAIL: quota.test_quota.DbQuotaDriverTest.test_reserve_over_quota_but_can_apply_negative_deltas
tags: worker-3
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/mnt/opt/stack/trove/trove/tests/unittests/quota/test_quota.py", line 511, in test_reserve_over_quota_but_can_apply_negative_deltas
    self.assertEqual(1, kw['usage_id'])
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 321, in assertEqual
    self.assertThat(observed, matcher, message)
  File "/mnt/opt/stack/trove/.tox/py27/local/lib/python2.7/site-packages/testtools/testcase.py", line 406, in assertThat
    raise mismatch_error
MismatchError: 1 != 2
======================================================================
FAIL: process-returncode
tags: worker-3
----------------------------------------------------------------------
Binary content:
  traceback (test/plain; charset="utf8")
Ran 634 (+3) tests in 4.599s (+0.116s)
FAILED (id=69, failures=6 (+6), skips=2)
error: testr failed (1)
ERROR: InvocationError: '/mnt/opt/stack/trove/.tox/py27/bin/python setup.py testr --slowest'
__________________________________________________________________________________________________________________________________________________________ summary ___________________________________________________________________________________________________________________________________________________________
ERROR: py27: commands failed

Changed in trove:
importance: Undecided → Critical
importance: Critical → Low
Changed in trove:
milestone: none → ongoing
Changed in trove:
assignee: nobody → Steve Leon (steve-leon)
Changed in trove:
status: New → Triaged
Amrith Kumar (amrith)
Changed in trove:
assignee: Steve Leon (steve-leon) → nobody
status: Triaged → Confirmed
status: Confirmed → Won't Fix
milestone: ongoing → none
status: Won't Fix → Confirmed
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.