I’ve setup a documentation blog here to document my progress/thoughts about the project so far. I’ve made an initial post about the tickets I’ve tackled during the community bonding period. You can find this post here. I’m mainly going to use the blog to give updates about my progress and post here for direct communication if I’m stuck on a particular problem. Of course, if my mentors prefer otherwise, I do not mind posting my progress on here and the blog as well or to use another communication channel.
The schedule I already mentioned on my proposal is the one I’ll largely be sticking to. I have a long period of exams/assessments running from mid-May till the first week of July. This however won’t affect my proposed schedule; I’m going to compensate by beginning work on the first milestone this week so I give myself more buffer time during June.
The schedule for documentation purposes is largely this:
- First Milestone: fixing worker database connections and adapting SQLite’s cloning method to using spawn.
- Second Milestone: Adding Oracle backend support to the parallel test runner.
- Third Milestone: General cleanup, documentation, and tackling other related tickets.
After the first milestone, the parallel test runner will be fully operational on Windows and macOS using spawn. I’ll also ensure the added logic didn’t break running the parallel test runner using fork.
Current implementation issue
Running the entire test suite with the current patch leads to nondeterministic failures on these tests:
I say nondeterministic because both the number of errors and failures and the tests that fail vary every single test run.
The majority of errors are operational errors due to the queried tables not existing. These errors also result in failures due to again the specified tables not existing.
Curious enough, running these tests in isolations leads to no errors. Although, two failures remain from test_utils and utils_tests.
I’m not sure what exactly causes the tables to be removed/not exist when the full test suite is run versus only running one set of tests in isolation.
Running the test suite with
--start-at=test_utils also gives no errors, just the two failures from test_utils and utils_tests. After reading through the test runner options, I’m going to use
--bisect to determine what causes the failures and post my results afterwards.
Here’s the link to the Jenkins build. It shows the exact errors and failures along with the test names.