New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[READY TO MERGE] async_poll_for and not poll_for inside a @gentest test #607
[READY TO MERGE] async_poll_for and not poll_for inside a @gentest test #607
Conversation
but commiting the rename was not intentional
Oh good. I've been noticing a bunch of those "arbiter is already running arbiter_reload_config command". Is that what you fixed? |
I think @thefab just fixed all the remaining async issues we had in the tests. wOOt :) let me know when we should merge |
I still never got the flapping plug-in working. Once this is merged in, I'll test again. Seemed like it might be an async issue. |
@scottkmaxwell ok thanks. We might have a regression there from the async switch nonetheless - if it's the case we'll deal with it on its side. Will wait for @thefab green light to merge this one. |
There are still some random problems on Travis (on random python versions): This one is about send_signal_child(), some recent changes here, no ? This one is maybe because of travis nodes are too slow (5 seconds default timeout of gen_test decorator): But the master is better with this pull request merged. So let's merge it and let's continue ! |
[READY TO MERGE] async_poll_for and not poll_for inside a @gentest test
one major fix is that we don't have anymore builds dying because of the POLL errors anymore so that's definitely looking way better |
@scottkmaxwell sure yeah. we also need more coverage there as I mentioned. Because if we're not catching those errors in the tests that's pretty bad |
Yes, we need a whole bunch of signal tests. Can you point me to a good example of kicking off a custom process so I can do signal and stop tests? |
@scottkmaxwell you can use start_arbiter() and point it to a callable you want to run as a process in circusd. See for instance https://github.com/mozilla-services/circus/blob/master/circus/tests/test_stats_client.py#L48 that uses https://github.com/mozilla-services/circus/blob/master/circus/tests/test_stats_client.py#L14 In your callable you can loop indefinitely and interact with signals I guess |
It will be a bit complex because I need to test interaction with the callable and its child processes. I'll give it a try. |
OK, I added some signal tests. They are all in one test because they are serial, but I test sending a signal to a process, children only and recursive, and I test shutting down the process only and having the daemon children shutdown. It's all on #603 now. |
Because of discusion on #605
Ready to merge (now)