Timing database shouldn't use attrs for test_id uniquness
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Testrepository |
Triaged
|
Wishlist
|
Unassigned |
Bug Description
When storing timing data in the times.dbm with the file repository type if the testtools attrs on a test change it creates a new entry in the timing database. This is not desirable behavior since the attr is just metadata about the test we don't want to assume when the metadata changes it's a new test. Just like we don't create a new entry in the timing database if the tags in the subunit stream change between runs.
For example from 2 runs in the timing database I have 2 entries for each test 1 from before I added attrs and 1 from after:
tempest.
tempest.
You can see the logs here: http://
I propose that we strip the attrs from the test_id before we store timing data in the database. This way we'll be using a consistent test_ids between runs.
So the implementation issue here is that attrs affect the test_id, and any assumptions we make here will then have to be propogated out to all test backends everywhere, in all languages. As such I'm pretty wary about that.