This PR closes fixes a problem with xdist and CI like this one, whereby each xdist worker tries to start a new memcached docker service. This happens even with only one worker whenever it is restarted (for some reason, running parallel tests within xdist workers leads to segfaults in some python versions)
Changes
Drops pytest-docker and relies on an already started memcached service for tests
Uses a gh action for memcached
Adds a pytest option to set memcached host and port
I also sneaked in a change in test scheduling for xdist to use worksteal: workers grab tests from other workers' queues if they can.
Checklist
[x] Wrote Unit tests (if necessary)
[x] Updated Documentation (if necessary)
[x] Updated Changelog
[ ] If notebooks were added/changed, added boilerplate cells are tagged with "tags": ["hide"] or "tags": ["hide-input"]
Description
This PR closes fixes a problem with xdist and CI like this one, whereby each xdist worker tries to start a new memcached docker service. This happens even with only one worker whenever it is restarted (for some reason, running parallel tests within xdist workers leads to segfaults in some python versions)
Changes
I also sneaked in a change in test scheduling for xdist to use
worksteal
: workers grab tests from other workers' queues if they can.Checklist
"tags": ["hide"]
or"tags": ["hide-input"]