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

Failures when running tests on i386 #261

Open
jcharaoui opened this issue Apr 6, 2024 · 2 comments
Open

Failures when running tests on i386 #261

jcharaoui opened this issue Apr 6, 2024 · 2 comments

Comments

@jcharaoui
Copy link
Contributor

When running tests in the latest ruby-moneta Debian package on i386, the suite is often failing because of errors like these:

Failures:
  1) standard_pstore store feature #values_at returns nil in place of missing values
     Failure/Error: expect(store.public_send(name, m.keys[1], m.keys[2], m.keys[0])).to eq [m.values[1], nil, m.values[0]]
       99 successful tests, failed on:
       #<struct keys=[{"vNjJO"=>"BrA93", "cBVBn"=>"edvOu"}, true, "e5BCw1nH"], values=[true, 0.815097346631038]>
       expected: [0.815097346631038, nil, true]
            got: [0.8150973466310381, nil, true]
       (compared using ==)
     Shared Example Group: :values_at called from ./spec/features/store.rb:110
     Shared Example Group: :store called from ./spec/helper.rb:273
     # ./spec/features/store.rb:103:in `block (4 levels) in <top (required)>'
     # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:33:in `block in check'
     # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/generator.rb:81:in `generate'
     # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:31:in `check'
     # ./spec/features/store.rb:100:in `block (3 levels) in <top (required)>'
     # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:124:in `block in run'
     # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `loop'
     # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `run'
     # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
     # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:37:in `block (2 levels) in setup'
703s Failures:
703s 
703s   1) standard_lruhash_with_expires store feature #merge! when passed a hash stores the return value of the block, if given, for keys that will be overwritten
703s      Failure/Error: expect(old_val).to eq m.values[0]
703s 
703s        52 successful tests, failed on:
703s        #<struct keys=["gEK2YmDZA", false], values=[0.911393002389911, "\x14\b\x04\x16\x7F\x1A", {"GszWcA"=>[{"SbamCy"=>360180090, "7js0mm"=>77475164, "FgqGIu"=>472940203, "OZEOwL"=>-363066917, "URTM4i"=>-481574857, "pFZRGB"=>-491415445}, "EATTc8"], "VSDZrm"=>[{"2mtG1c"=>64351572, "mfFP84"=>245870192, "7JdeJo"=>174289396, "29Gg0r"=>427847775, "tLA2IG"=>-298419733, "ANfECI"=>-59874243}, "KTa34j"], "IUHHiA"=>[-367309959, {"q0LyeP"=>-144039591, "fdHpT5"=>442533515, "fmFo0R"=>-293330843, "KO1vSh"=>-54303923, "Z0xI1F"=>359269024, "hOQ2ne"=>297688430}], "Y29WVg"=>["SmORno", -353819482], "RFishu"=>[164629508, -406096728], "w729gv"=>["8XXsLV", "s8FW0z"]}, 83912656]>
703s 
703s 
703s        expected: 0.911393002389911
703s             got: 0.9113930023899111
703s 
703s        (compared using ==)
703s      Shared Example Group: :merge! called from ./spec/features/store.rb:235
703s      Shared Example Group: :merge_or_update called from ./spec/features/store.rb:258
703s      Shared Example Group: :store called from ./spec/helper.rb:273
703s      # ./spec/features/store.rb:213:in `block (5 levels) in <top (required)>'
703s      # ./spec/features/store.rb:211:in `public_send'
703s      # ./spec/features/store.rb:211:in `block (4 levels) in <top (required)>'
703s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:33:in `block in check'
703s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/generator.rb:81:in `generate'
703s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:31:in `check'
703s      # ./spec/features/store.rb:209:in `block (3 levels) in <top (required)>'
703s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:124:in `block in run'
703s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `loop'
703s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `run'
703s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
703s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:37:in `block (2 levels) in setup'
661s Failures:
661s 
661s   1) standard_dbm store feature #merge! when passed a lazy enumerator stores the return value of the block, if given, for keys that will be overwritten
661s      Failure/Error: expect(new_val).to eq m.values[1]
661s 
661s        50 successful tests, failed on:
661s        #<struct keys=[{"Yn69xGLX9h"=>"yN7cm6DPJg", "6TcdwtxR"=>"PIRWdKOj"}, 0], values=[{"DLx3A1"=>["NMZyQL", "4i53su"], "LRqRdS"=>[-491451692, {"wnWilT"=>180291099, "ogRC4E"=>-98685261, "SU0OB9"=>191229382, "kuAX0U"=>223771449, "xHMH6W"=>381413286, "XNkm9z"=>-32717345}], "MErMc9"=>["492cC5", "A1oVzZ"], "xhcsVp"=>["ldkAOF", -150362135], "Dfr3t2"=>["w65M7B", "QOQPch"], "7f3L0i"=>[{"IS58bB"=>360704192, "bIN20G"=>-75816570, "GlPIi3"=>-453257225, "WpmAT8"=>-255675953, "j9A0uO"=>19164054, "BzeWTj"=>-479302024}, {"zRXrZJ"=>-190933560, "HI9mrZ"=>17488255, "v9xLox"=>390517090, "nlLlgm"=>233259038, "xnPgB8"=>-40804865, "iYsBlM"=>-517928147}]}, 0.872821752557635, nil, "bKbfmj"]>
661s 
661s 
661s        expected: 0.872821752557635
661s             got: 0.8728217525576349
661s 
661s        (compared using ==)
661s      Shared Example Group: :merge! called from ./spec/features/store.rb:252
661s      Shared Example Group: :merge_or_update called from ./spec/features/store.rb:258
661s      Shared Example Group: :store called from ./spec/helper.rb:273
661s      # ./spec/features/store.rb:214:in `block (5 levels) in <top (required)>'
661s      # ./spec/features/store.rb:211:in `public_send'
661s      # ./spec/features/store.rb:211:in `block (4 levels) in <top (required)>'
661s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:33:in `block in check'
661s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/generator.rb:81:in `generate'
661s      # /usr/share/rubygems-integration/all/gems/rantly-2.0.0/lib/rantly/property.rb:31:in `check'
661s      # ./spec/features/store.rb:209:in `block (3 levels) in <top (required)>'
661s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:124:in `block in run'
661s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `loop'
661s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `run'
661s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
661s      # /usr/share/rubygems-integration/all/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:37:in `block (2 levels) in setup'

These are intermittent errors. Sometimes, the test suite passes on i386.

Here's a link to the full test log for that last example: https://ci.debian.net/packages/r/ruby-moneta/testing/i386/44773329/

@asppsa
Copy link
Collaborator

asppsa commented Apr 7, 2024

Thanks for the report. Are you running the tests on one or more specific Ruby versions?

@jcharaoui
Copy link
Contributor Author

Yes, that would be the version that's currently packaged in Debian sid: Ruby 3.1

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

No branches or pull requests

2 participants