During the “intermission” on the day of the Jessie release, Julien, Ivo, AJ and I spent some time improving Britney2. Due to said intermission, we can proudly say that from the very first run for Stretch, Britney2 was:
- running on Python3k. Kudos to Julien and Ivo.
- doing consistency checks of identical packages present in two more suites. Kudos to AJ.
- Said checking is mostly useful for catching silly mistakes in our test suite. A very welcome change, as data inconsistency plus hash randomisation (default in Python3k) caused some of the tests to fail sporadically.
- Also, many thanks to AJ for providing a patch for #709460. Sadly, I do not remember if we managed to merge that prior to the first Stretch run.
- outputting some statistics about the “package graph” and some performance counters from its installability tester.
The performance counters are mostly interesting for me, when I mess with the installability tester. A couple of backtrack related numbers from the Britney run early today:
- 77 078 times, Britney would create a “full restore point” and recurse.
- In 10 of those cases, she would reject the guess, backtrack back to the restore point and move on to the next guess.
- In the remaining 77 068 times, she would accept the candidate (and thereby solve the query).
- NB: This number is not directly visible and has to be computed manually. It is possible for Britney to do multiple “accept”-recursions for the same query.
- 52 times, she would have exhausted all but one option. In this case, she simply goes “all-in” and skips the restore point.
- 54 618 times, she would accept the guess using a partial restore point without needing to recurse.
- An (sadly) uncounted number of times, she would reject the guess using a partial restore point without needing to recurse.
Furthermore, about 82% of the ~577 000 times Britney called “is_installable” in this run, the installability tester answered with a cached result. I guess it was a trivial run. 🙂