Tests: worker channel tests - #106
Conversation
| %%TEST_GLOBALS%% | ||
|
|
||
| daemon off; | ||
| worker_rlimit_nofile 15; |
There was a problem hiding this comment.
ngx_devpoll_module (Solaris) is configured to return up to 32 file descriptors per check (dpcf->events -> nevents -> devpoll.dp_nfds). As documented in poll(4d), ioctl(DP_POLL) returns EINVAL when dp_nfds is greater than {OPEN_MAX} (RLIMIT_NOFILE, apparently).
As a result, worker_rlimit_nofile value lesser than 32 makes worker processes just spin endlessly logging ioctl(DP_POLL) failed (22: Invalid argument).
Bonus: Solaris 11 defaults to unbounded tmpfs for /tmp, so it is possible to lock the system if you leave the test running until it produces a large enough log file.
worker_rlimit_nofile 32 with 24 open connections seems to work.
|
|
||
| $t->todo_alerts(); | ||
|
|
||
| my $log = `grep -F "$pid" ${\($t->testdir())}/error.log`; |
There was a problem hiding this comment.
grep: illegal option -- F — /usr/bin/grep in Solaris 10-11.
Several more tests are affected, which I missed previously because my Solaris CI workflow has /usr/xpg4/bin/grep in path. IMO, it should be fine to leave these tests as is until someone else complains.
No description provided.