Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more jruby versions to Travis build #123

Merged
merged 7 commits into from
Aug 10, 2016

Conversation

wallyqs
Copy link
Member

@wallyqs wallyqs commented Jul 31, 2016

  • Adds testing Java 7 and Java 8 under oraclejdk and openjdk
  • Skip specs which generate inboxes in jruby, pending for now since low performant in CI environment (SecureRandom is slow or hangs. jruby/jruby#3351)
  • Also skip TLS specs in jruby since failing and need more tweaks :/
  • Updates usage of rspec throughout
  • Add profiling of tests to rspec to detect slow tests

Waldemar Quevedo added 6 commits July 31, 2016 18:21
- Adds testing Java 7 and Java 8 under oraclejdk and openjdk

- Skip requests and TLS specs, pending for now since failing
  and need more tweaks :/

- Updates usage of rspec throughout
@headius
Copy link

headius commented Aug 1, 2016

Are you able to reproduce the slowness described here:

Skip specs which generate inboxes in jruby, pending for now since low performant in CI environment (jruby/jruby#3351)

We would love to have a way to reproduce any slow behavior surrounding SecureRandom, so we can fix it.

Also, are there any issues filed for this?

Also skip TLS specs in jruby since failing and need more tweaks :/

@wallyqs
Copy link
Member Author

wallyqs commented Aug 1, 2016

Hi @headius thanks for following up :) The TLS failures still have to look into and possibly could be Eventmachine usage related. Those tests quickly fail, though the ones tests involved calling SecureRandom seem to be stalling reliably in the Travis CI environment.

For example here are some builds of what is basically just a call to "_INBOX.#{SecureRandom.hex(13)}" taking a bit under 8 minutes and other times timing out the build due to transgressing the 10 minutes deadline from Travis CI:
https://travis-ci.org/wallyqs/ruby-nats/jobs/148795666#L234
https://travis-ci.org/wallyqs/ruby-nats/jobs/148783115
https://travis-ci.org/wallyqs/ruby-nats/jobs/148795664

How slow it is fluctuates in Travis too, here calling SecureRandom.hex(13) is taking over a minute, so not as long...
https://travis-ci.org/wallyqs/ruby-nats/jobs/148795662#L375
https://travis-ci.org/wallyqs/ruby-nats/jobs/148795661#L375

Also to notice is that subsequent calls are faster and it is the first one which is taking that long:

Top 3 slowest examples (476.87 seconds, 100.0% of total time):
  #create_inbox create the expected format
    476.87 seconds ./spec/client/client_spec.rb:435
  #create_inbox calling multiple times should be different
    0.002 seconds ./spec/client/client_spec.rb:439
  #create_inbox when Kernel.srand is regularly reset to the same value should generate a unique inbox name
    0.001 seconds ./spec/client/client_spec.rb:446

# Above from build: https://travis-ci.org/wallyqs/ruby-nats/jobs/148795666#L234
# Spec: https://github.com/wallyqs/ruby-nats/blob/jruby-build-maint-repr/spec/client/client_spec.rb#L434

Any advice or hints appreciated here, thanks!

@wallyqs
Copy link
Member Author

wallyqs commented Aug 10, 2016

Seems builds no longer stall in jruby Travis CI env when setting source to be urandom, so merging as is for now. This will probably change/go away in the future since looks like opting for non blocking PRNG in next jruby version which would give a different behavior.

@wallyqs wallyqs merged commit 9fc043e into nats-io:master Aug 10, 2016
@wallyqs wallyqs deleted the jruby-build-maint branch August 10, 2016 16:13
wallyqs added a commit that referenced this pull request Jun 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants