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

deps: downgrade jruby, keep updated default-gem dependencies (forward-port #15283) #15369

Merged
merged 2 commits into from Oct 3, 2023

Conversation

yaauie
Copy link
Member

@yaauie yaauie commented Oct 3, 2023

forward-ports non-release-branch components of #15283 to main

  • deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the scheduler backing Concurrent::TimerTask that occurs when Jruby 9.4.3.0's invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: jruby/jruby#7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the updates to gems that were included in the latest JRuby 9.4.3.0 to ensure we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on racc that is no longer relevant.

Resolves: #15282

  • Imported the licenses for some gems
  • cgi
  • date
  • ffi-binary-libfixposix
  • io-console
  • net-http
  • net-protocol
  • reline
  • time
  • timeout
  • uri
  • specs: avoid mocking global ::Gem::Dependency::new

  • build: remove redundanct dependsOn declaration

  • deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed Ruby / EPL-2.0 / LGPL-2.1-or-later and the Ruby license is preferred to EPL when available

Release notes

[rn:skip]: no change from 8.10

What does this PR do?

Forward-ports the pinning of Jruby from 8.10 to main; the bugs have been fixed upstream but no released artifact is available yet.

Why is it important/What is the impact to the user?

Prevents us from releasing a broken Logstash

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • [ ] I have made corresponding changes to the documentation
  • [ ] I have made corresponding change to the default configuration files (and/or docker env variables)
  • [ ] I have added tests that prove my fix is effective or that my feature works

How to test this PR locally

Same as #15283:

With a long-running pipeline and logging in debug mode, it is easy to see that the scheduled work keeps working when this patch is applied, or silently stops without this patch:

bin/logstash --log.level debug -e 'input { heartbeat {} }'

Related issues

#15283

…#15283)

forward-ports non-release-branch components of elastic#15283 to `main`

* deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the
scheduler backing `Concurrent::TimerTask` that occurs when Jruby 9.4.3.0's
invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: jruby/jruby#7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the
updates to gems that were included in the latest JRuby 9.4.3.0 to ensure
we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on `racc` that is no longer relevant.

Resolves: elastic#15282

* Imported the licenses for some gems

- cgi
- date
- ffi-binary-libfixposix
- io-console
- net-http
- net-protocol
- reline
- time
- timeout
- uri

* specs: avoid mocking global ::Gem::Dependency::new

* build: remove redundanct dependsOn declaration

* deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed `Ruby` / `EPL-2.0` / `LGPL-2.1-or-later` and
the Ruby license is preferred to EPL when available

---------

Co-authored-by: andsel <selva.andre@gmail.com>
@yaauie yaauie added the bug label Oct 3, 2023
@yaauie yaauie requested a review from mashhurs October 3, 2023 18:10
Copy link
Contributor

@mashhurs mashhurs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@yaauie
Copy link
Member Author

yaauie commented Oct 3, 2023

jenkins build this again please

@yaauie
Copy link
Member Author

yaauie commented Oct 3, 2023

jenkins test this again please

@elastic-sonarqube
Copy link

SonarQube Quality Gate

Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@mashhurs mashhurs merged commit 70081bb into elastic:main Oct 3, 2023
5 checks passed
@mashhurs
Copy link
Contributor

mashhurs commented Oct 3, 2023

@logstashmachine backport to 8.11

@mashhurs
Copy link
Contributor

mashhurs commented Oct 3, 2023

@logstashmachine backport 8.11

github-actions bot pushed a commit that referenced this pull request Oct 3, 2023
…-port #15283) (#15369)

* deps: downgrade jruby, keep updated default-gem dependencies (#15283)

forward-ports non-release-branch components of #15283 to `main`

* deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the
scheduler backing `Concurrent::TimerTask` that occurs when Jruby 9.4.3.0's
invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: jruby/jruby#7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the
updates to gems that were included in the latest JRuby 9.4.3.0 to ensure
we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on `racc` that is no longer relevant.

Resolves: #15282

* Imported the licenses for some gems

- cgi
- date
- ffi-binary-libfixposix
- io-console
- net-http
- net-protocol
- reline
- time
- timeout
- uri

* specs: avoid mocking global ::Gem::Dependency::new

* build: remove redundanct dependsOn declaration

* deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed `Ruby` / `EPL-2.0` / `LGPL-2.1-or-later` and
the Ruby license is preferred to EPL when available

---------

Co-authored-by: andsel <selva.andre@gmail.com>

* deps: add license notices for gems moved from default to bundled

---------

Co-authored-by: andsel <selva.andre@gmail.com>
(cherry picked from commit 70081bb)
mashhurs pushed a commit that referenced this pull request Oct 3, 2023
…-port #15283) (#15369) (#15370)

* deps: downgrade jruby, keep updated default-gem dependencies (#15283)

forward-ports non-release-branch components of #15283 to `main`

* deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the
scheduler backing `Concurrent::TimerTask` that occurs when Jruby 9.4.3.0's
invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: jruby/jruby#7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the
updates to gems that were included in the latest JRuby 9.4.3.0 to ensure
we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on `racc` that is no longer relevant.

Resolves: #15282

* Imported the licenses for some gems

- cgi
- date
- ffi-binary-libfixposix
- io-console
- net-http
- net-protocol
- reline
- time
- timeout
- uri

* specs: avoid mocking global ::Gem::Dependency::new

* build: remove redundanct dependsOn declaration

* deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed `Ruby` / `EPL-2.0` / `LGPL-2.1-or-later` and
the Ruby license is preferred to EPL when available

---------

Co-authored-by: andsel <selva.andre@gmail.com>

* deps: add license notices for gems moved from default to bundled

---------

Co-authored-by: andsel <selva.andre@gmail.com>
(cherry picked from commit 70081bb)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Work scheduler broken in 8.10 BC using JRuby 9.4.3.0
2 participants