Dne 18. 01. 20 v 7:33 Mamoru TASAKA napsal(a):
15 rubygem-thin-1.7.2-11.fc31.src.rpm
https://koji.fedoraproject.org/koji/taskinfo?taskID=40654299
One test failure, I don't know well.
Failures:
1) Thin::Server should set lower maximum_connections size when too
large
Failure/Error: @server.maximum_connections.should < 100_000
expected: < 100000
got: 100000
# ./spec/server_spec.rb:21:in `block (2 levels) in <top (required)>'
Looking into this, I think there is (Koji) Kernel update behind this.
The last successful rubygem-thin build [1] was build on:
~~~
DEBUG buildroot.py:488: kernel version == 5.0.6-200.fc29.x86_64
~~~
While the build failures started around mid of December according to
Koschei [2] (although the missing logs are PITA). This [3] is fresh F31
scratch build which fails the same way as Rawhide.
So looking into details, the test in Thin is doing the following:
~~~
@server.maximum_connections = 100_000
~~~
This propagates into EventMachine [4] and calls `{g,s}etrlimit
(RLIMIT_NOFILE, &rlim);`. On my machine, this is the NOFILE value:
~~~
$ prlimit | grep NOFILE
NOFILE max number of open files 1024 524288 soubory
~~~
Apparently, this is way above the limit the test case expects. My
conclusion is that this had to be changed in Kernel, although it could
be even systemd. Not sure.
Nevertheless, the test is naive and it should be tweaked IMO.
BTW the test passes with `--new-chroot` mock option :)
Vít
[1]
https://koji.fedoraproject.org/koji/buildinfo?buildID=1340022
[2]
https://koschei.fedoraproject.org/package/rubygem-thin
[3]
https://koji.fedoraproject.org/koji/taskinfo?taskID=40873714
[4]
https://github.com/eventmachine/eventmachine/blob/master/ext/em.cpp#L300
[5]
https://github.com/macournoyer/thin/blob/master/spec/server_spec.rb#L21