Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Linear performance test times out intermittently on JRuby

Aperta
#1,310 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
ruby

Direzione di ricerca

Inizia con test/rdoc/test_rdoc_parser_ruby.rb e test_read_directive_linear_performance, quindi riproduci il timeout nella CI di JRuby usando lo stack trace riportato. Determina se il test richiede una gestione specifica per JRuby o se il timeout evidenzia un problema reale del parser; il lavoro è completato quando il test viene eseguito in modo affidabile senza mascherare le regressioni.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

The linear timing test "test_read_directive_linear_performance" occasionally times out on JRuby. This does not likely indicate a failure to run the example in linear time as much as it reflects a sensitivity to very short timeouts. Until we fully understand why this test times out intermittently, I will omit it on JRuby.

The timeout failure produces the following output in CI:

Error: test_read_directive_linear_performance(TestRDocParserRuby): Timeout::Error: [100]: in 0.01s (tmin: 3.2501000021056825e-05, tmax: 7.660400001441303e-05, tbase: 1/1000)
org/jruby/ext/thread/Mutex.java:119:in `lock'
org/jruby/ext/thread/Mutex.java:181:in `synchronize'
/home/runner/.rubies/jruby-head/lib/ruby/stdlib/timeout.rb:93:in `finished'
/home/runner/.rubies/jruby-head/lib/ruby/stdlib/timeout.rb:191:in `block in timeout'
/home/runner/.rubies/jruby-head/lib/ruby/stdlib/timeout.rb:196:in `timeout'
/home/runner/work/rdoc/rdoc/vendor/bundle/jruby/3.1.0/gems/test-unit-ruby-core-1.0.6/lib/core_assertions.rb:836:in `block in assert_linear_performance'
org/jruby/RubyArray.java:2009:in `each'
/home/runner/work/rdoc/rdoc/vendor/bundle/jruby/3.1.0/gems/test-unit-ruby-core-1.0.6/lib/core_assertions.rb:831:in `assert_linear_performance'
/home/runner/work/rdoc/rdoc/test/rdoc/test_rdoc_parser_ruby.rb:[33](https://github.com/ruby/rdoc/actions/runs/13748754286/job/38447004956#step:5:34)87:in `test_read_directive_linear_performance'
     3384: 
     3385:   def test_read_directive_linear_performance
     3386:     pre = ->(i) {util_parser '# ' + '0'*i + '=000:'}
  => 3387:     assert_linear_performance((1..5).map{|i|10**i}, pre: pre) do |parser|
     3388:       assert_nil parser.read_directive []
     3389:     end
     3390:   end
org/jruby/RubyKernel.java:1426:in `catch'
org/jruby/RubyKernel.java:1421:in `catch'
org/jruby/RubyArray.java:2009:in `each'
org/jruby/RubyArray.java:2009:in `each'
org/jruby/RubyArray.java:2009:in `each'
org/jruby/RubyKernel.java:1426:in `catch'
org/jruby/RubyKernel.java:1421:in `catch'
Lingua principale
Ruby
Stelle
929
Fork
469
Merge medio
1g 2h
PR unite (30g)
19

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ruby/rdoc

Tutte le issue di ruby/rdoc

Issue simili

Altre issue su Ruby

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.