oracle / truffleruby

A high performance implementation of the Ruby programming language, built on GraalVM.
https://www.graalvm.org/ruby/
Other
3k stars 184 forks source link

SIGKILL on gitlab CI #2548

Open HoneyryderChuck opened 2 years ago

HoneyryderChuck commented 2 years ago

Hi,

The truffleruby build of rodauth-oauth started failing out of the blue (I have set up monthly automated builds, this was the last successful one, this was the first failing one, there were no changes in between.

I'm suspecting that either gitlab changed the memory limits for free plans, or truffleruby just started requiring more memory usual. I've set up a test branch where I'm experimenting with capping the VM heap memory, but at least --vm.Xmx2g didn't solve the problem for me.

Any other suggestions on what can be done further?

eregon commented 2 years ago

I don't see any --vm.Xmx2g in this log, where is it set? https://gitlab.com/honeyryderchuck/rodauth-oauth/-/jobs/1883707290

Both failing runs seems to be on truffleruby 21.3.0 and the passing one on truffleruby 21.2.0 (based on 2.7.3 vs 2.7.4 compat). It would be useful to show a ruby --version to make this clearer.

The SIGKILL seems most likely thrown by the the gitlab CI or the container, probably for OOM conditions. How much memory is given to the container? Can you also run free -m inside and outside?

HoneyryderChuck commented 2 years ago

I don't see any --vm.Xmx2g in this log, where is it set?

https://gitlab.com/honeyryderchuck/rodauth-oauth/-/blob/truffleruby-debug/.gitlab-ci.yml#L101

It would be useful to show a ruby --version to make this clearer.

https://gitlab.com/honeyryderchuck/rodauth-oauth/-/jobs/1887938622#L212

Can you also run free -m inside and outside?

https://gitlab.com/honeyryderchuck/rodauth-oauth/-/jobs/1887938622#L213

(I'm not sure what you mean by "inside and outside". If you mean "outside of the container", I'm not sure I can do that in aa docker executor).