ocurrent / solver-service

An OCluster service for solving opam dependencies
Apache License 2.0
12 stars 7 forks source link

The stress submission as a pipeline #41

Closed moyodiallo closed 1 year ago

moyodiallo commented 1 year ago

We can reproduce the descriptor leaks issue of the solver-service with this 2 commands(to rebuild change the --opam-repository), the pipeline can be observe on http://localhost:8080. Keep changing --opam-repository instead of removing the cache(var directory):

 $ export CI_PROFILE=production                                                                                                                                                                                                                                                
 $ dune exec -- stress/stress_submit.exe --submission-service submission.cap --limit 30 --opam-repository 213551c85067f108045b0e12ccf1e62f22199e83

The issue of descriptor leaks is solved by #39. To reproduce the bug the submission limit is 30 jobs. And after deploying the fix #39 , it is tested with the limit of 100 jobs.

When we submit more than 200, we get the descriptor leaks error ["Error",["Msg","Unix.Unix_error(Unix.EMFILE, \"pipe\", \"\")"]]. And 300 jobs for sure.

It seems the PR #39 fix one of the issue about descriptor leaks.

moyodiallo commented 1 year ago

We would like this vendor of OCaml-CI, but we don't have https://github.com/ocaml/dune/pull/6577 yet, so we can't merge.

@tmcgilchrist

moyodiallo commented 1 year ago

I edit https://github.com/ocurrent/solver-service/pull/41#issuecomment-1415660148, after more investigation.

@tmcgilchrist @maiste.