Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 750005 - dev-lang/elixir-1.10.4 test failure Kernel.CLI.CompileTest
Summary: dev-lang/elixir-1.10.4 test failure Kernel.CLI.CompileTest
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mikhail S. Pobolovets
Depends on:
Reported: 2020-10-18 18:54 UTC by Alexey
Modified: 2021-07-23 07:55 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---

emerge --info (file_750005.txt,19.98 KB, text/plain)
2020-10-18 18:54 UTC, Alexey
build.log (build.log,58.87 KB, text/x-log)
2020-10-18 18:55 UTC, Alexey

Note You need to log in before you can comment on or make changes to this bug.
Description Alexey 2020-10-18 18:54:32 UTC
Created attachment 666638 [details]
emerge --info

1) test compiles code (Kernel.CLI.CompileTest)                                                                                                                                                                                                                                  
     Assertion with == failed                                                                                                                                                                                                                                                     
     code:  assert :code.which(CompileSample) |> List.to_string() == Path.expand(context[:beam_file_path])                                                                                                                                                                        
     left:  ""                                                                                                                                                                                                                                                                    
     right: "/mnt/portagetmp/portage/dev-lang/elixir-1.10.4/work/elixir-1.10.4/lib/elixir/tmp/beams/120/Elixir.CompileSample.beam"                                                                                                                                                
       test/elixir/kernel/cli_test.exs:126: (test)
Comment 1 Alexey 2020-10-18 18:55:08 UTC
Created attachment 666641 [details]
Comment 2 Sergei Trofimovich (RETIRED) gentoo-dev 2020-10-27 22:24:28 UTC
Does it fail for you every time you run a test? Or happens only occasionally?

We saw it in bug #727344 as well. It's somehow very hard to reproduce. Makes it hard to debug and understand why it happens at all. My suspiction is on some (old?) epmd daemon running.
Comment 3 Sergei Trofimovich (RETIRED) gentoo-dev 2020-10-27 22:53:52 UTC
My speculation is that problem happens when one test collides with another when compiles (or loads? or maybe cleans up?) CompileSample sample module.

$ git grep CompileSample | cat
lib/elixir/test/elixir/code_test.exs:    assert [{CompileSample, binary}] = Code.compile_file(fixture_path("compile_sample.ex"))
lib/elixir/test/elixir/code_test.exs:    :code.purge(CompileSample)
lib/elixir/test/elixir/code_test.exs:    :code.delete(CompileSample)
lib/elixir/test/elixir/code_test.exs:    assert [{CompileSample, binary}] = Code.require_file(fixture_path("compile_sample.ex"))
lib/elixir/test/elixir/code_test.exs:    :code.purge(CompileSample)
lib/elixir/test/elixir/code_test.exs:    :code.delete(CompileSample)
lib/elixir/test/elixir/fixtures/compile_sample.ex:defmodule(CompileSample, do: nil)
lib/elixir/test/elixir/kernel/cli_test.exs:    beam_file_path = Path.join([context.tmp_dir, "Elixir.CompileSample.beam"])
lib/elixir/test/elixir/kernel/cli_test.exs:    assert :code.which(CompileSample) |> List.to_string() == Path.expand(context.beam_file_path)
lib/elixir/test/elixir/kernel/cli_test.exs:    :code.purge(CompileSample)
lib/elixir/test/elixir/kernel/cli_test.exs:    :code.delete(CompileSample)
lib/elixir/test/elixir/kernel/cli_test.exs:    assert :code.which(CompileSample) |> List.to_string() == Path.expand(context[:beam_file_path])
lib/elixir/test/elixir/kernel/cli_test.exs:    :code.purge(CompileSample)
lib/elixir/test/elixir/kernel/cli_test.exs:    :code.delete(CompileSample)
Comment 4 Alexey 2020-10-28 00:29:40 UTC
It happened once, but not again.