-
Notifications
You must be signed in to change notification settings - Fork 415
Conversation
Strange, how do I get Travis to test this branch? I thought it tested all PRs automatically. |
@@ -5,3 +5,9 @@ rvm: | |||
- 1.9.3 | |||
- rbx-2 | |||
- jruby-19mode | |||
|
|||
# speed up bundle install, especially nokogiri |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This comment feels overly specific and probably doesn't need to be here.
I've confirmed that setting |
Nice speedup, indeed.
|
MRIs are a clear win, but rbx seems unaffected, and jruby is slower! I investigated, and those numbers are red herrings. On this branch, rbx-2 failed to fetch a gem over the network on first try, so it needed to do a full rebundle. jruby-19mode failed two flaky specs on first try, so it did a retry of those specs. Neither of these things happened when travis last ran on master. This suggests its faster across the board, flaky specs and network notwithstanding. |
I think it's very unlikely that we'll not see a speedup from parallelising bundle installs (all else equal), so this seems good to me regardless! I actually thought that bundler did this by default using a reasonable job value for the system, but it seems not? |
Yeah, I would expect the jobs setting to be inferred, or to have a sensible default, but it is not. One must manually set jobs on each machine. I expect that future versions of bundler will have jobs set to something > 1 by default, but it is currently not the case. |
What's the state of this? |
37f3db4
to
bad4acc
Compare
As far as I know, this is good to merge. The CI was green, but I just force-pushed a rebase to make sure we're up to date. However, looks like master was already failing. Doh. |
@@ -5,3 +5,7 @@ rvm: | |||
- 1.9.3 | |||
- rbx-2 | |||
- jruby-19mode | |||
env: | |||
global: | |||
- BUNDLE_JOBS=4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure about this. The latest TravisCI log shows:
$ bundle install --jobs=3 --retry=3
Should it be using 4 jobs, as suggested here, or is the output faulty?
Interesting. I bet Travis has updated their default bundle command to take advantage of concurrency since this PR was submitted. I'll push another commit to remove BUNDLE_JOBS, since Travis appears to curating this setting now. Otherwise,
|
bad4acc
to
e801ae3
Compare
Vast majority of time is in bundle install, and the vast majority of that is installing nokogiri. Parallelize bundle install, and use system libraries for nokogiri installation.
@botandrose Yeah there are three tests in master that fail for now, because they aren't filtered out by |
Thank you! |
Vast majority of time is in bundle install, and the vast majority of
that is installing nokogiri. Parallelize bundle install, and use system
libraries for nokogiri installation.