Skip to content
This repository was archived by the owner on Nov 30, 2024. It is now read-only.

Reduce JRuby flakyness by giving it more time to finish #2444

Merged
merged 1 commit into from
Jul 15, 2017

Conversation

PragTob
Copy link
Contributor

@PragTob PragTob commented Jul 14, 2017

Startup time is still very much a problem with JRuby, hence
feature type aruba cukes that invoke rspec a lot of times
are still problematic. The bisect specs do this to the extreme,
resulting in long spec run times. Locally a single scenario
takes 36 seconds to run for me, on a 4-core desktop computer.
An overloaded CI might take longer, hence just double the timeout
and hope it's enough. Nothing much else we can do.

ref: #2442

While I'm here, thanks for rspec it's 🚀 - and shoes4 is an OSS project that is rigorously tested with it :)

PragTob added a commit to PragTob/rspec-dev that referenced this pull request Jul 14, 2017
Opposed to what I said in rspec/rspec-core#2444 there is something
we can do, I just underestimated its effect. There is `--dev`
(see https://github.com/jruby/jruby/wiki/Improving-startup-time#use-the---dev-flag).

Locally for the rspec-core --bisect spec this brought the runtime
down from 33 to 36 seconds to 21 seconds!

It also encompasses disabling invoke dynamic already, so no need
for that. It is opposed to server mode that was used however,
server mode targets peak performance at the cost of bigger startup
and warmup times and is usually intended for running on the server/
benchmarks. It was introduced for no reason apparent to me in
bc0b976 and I think --dev fits the use case better and is
closer to what most peeps probably run either way.

Other changes I did:

* collapsed all the envs into one, it shouldn't hurt the other
  elements in the matrix, we lose the compat version 2.0 but
  that doesn't seem too important atm if it is please tell me
* updated the JRuby version to the most current one
@PragTob
Copy link
Contributor Author

PragTob commented Jul 15, 2017

No idea what's up with Appveyor but I also can't restart it... Although I could rebase against master, maybe I started off on a wrong parent or something.

Startup time is still very much a problem with JRuby, hence
feature type aruba cukes that invoke rspec a lot of times
are still problematic. The bisect specs do this to the extreme,
resulting in long spec run times. Locally a single scenario
takes 36 seconds to run for me, on a 4-core desktop computer.
An overloaded CI might take longer, hence just double the timeout
and hope it's enough. Nothing much else we can do, but try using
--dev see rspec/rspec-dev#179

ref: rspec#2442
@PragTob PragTob force-pushed the fix-jruby-flakyness branch from 3c6bd70 to b5efc97 Compare July 15, 2017 08:16
@PragTob
Copy link
Contributor Author

PragTob commented Jul 15, 2017

(nothing to rebase against, reworded commit message refing my other PR to get a rebuild)

@myronmarston myronmarston merged commit a8ca431 into rspec:master Jul 15, 2017
@myronmarston
Copy link
Member

Thanks!

@PragTob PragTob deleted the fix-jruby-flakyness branch July 16, 2017 08:25
MatheusRich pushed a commit to MatheusRich/rspec-core that referenced this pull request Oct 30, 2020
Reduce JRuby flakyness by giving it more time to finish
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants