Project

General

Profile

Actions

Bug #18614

open

Error (busy loop) in TestGemCommandsSetupCommand#test_destdir_flag_does_not_try_to_write_to_the_default_gem_home

Added by duerst (Martin Dürst) 3 months ago. Updated 2 months ago.

Status:
Open
Priority:
Normal
Target version:
-
ruby -v:
ruby 3.1.0dev (2021-06-03T06:59:33Z master 7e14762159) [x86_64-linux]
[ruby-core:107791]

Description

When running make check, I get a busy loop in
TestGemCommandsSetupCommand#test_destdir_flag_does_not_try_to_write_to_the_default_gem_home
every time I try. When excluding this test
(by changing the method name to _test_destdir_flag_does_not_try_to_write_to_the_default_gem_home),
things work as usual (17 errors related to TestNetHTTPS/TestNetHTTPLocalBind).
The relevant file is test/rubygems/test_gem_commands_setup_command.rb. When running only that file,
I get two failures and two errors. One of the errors says

TestGemCommandsSetupCommand#test_destdir_flag_does_not_try_to_write_to_th
  1) Error:
TestGemCommandsSetupCommand#test_destdir_flag_does_not_try_to_write_to_the_default_gem_home:
Gem::FilePermissionError: You don't have write permissions for the /home/duerst/14ruby/tmp/test_rubygems_20220308-18434-8gq4j4/gemhome/plugins directory.

This is on Windows 10/WSL/Ubuntu 20.04.

Updated by duerst (Martin Dürst) 3 months ago

Some additional information: The permissions in the related directories are as follows (from a different test run):

duerst@Kloentalersee:~/14ruby/tmp/test_rubygems_20220308-13015-dxrmg4/gemhome$ ls -la
total 36
drwxrwxr-x 9 duerst duerst 4096 Mar  8 16:24 .
drwx------ 9 duerst duerst 4096 Mar  8 16:24 ..
drwxrwxr-x 2 duerst duerst 4096 Mar  8 16:24 build_info
drwxrwxr-x 2 duerst duerst 4096 Mar  8 16:24 cache
drwxrwxr-x 3 duerst duerst 4096 Mar  8 16:24 doc
drwxrwxr-x 2 duerst duerst 4096 Mar  8 16:24 extensions
drwxrwxr-x 5 duerst duerst 4096 Mar  8 16:24 gems
dr-xr-xr-x 2 duerst duerst 4096 Mar  8 16:24 plugins
drwxrwxr-x 3 duerst duerst 4096 Mar  8 16:24 specifications

There's definitely a 'w' missing on the plugins directory, but it's unclear why just this one directory should have lower permissions than the rest.

Updated by hsbt (Hiroshi SHIBATA) 2 months ago

  • Assignee set to hsbt (Hiroshi SHIBATA)
  • Status changed from Open to Assigned

I will investigate this test on WSL2 environment.

Updated by duerst (Martin Dürst) 2 months ago

@hsbt (Hiroshi SHIBATA): Many thanks for your help. This error appeared several times, but today, I have not been able to reproduce it anymore. It is indeed possible that this was a transient problem, as we discussed on March 14. For whatever reason, it seems that it took longer on my system to get back to normal than on other systems. I will check some more, and close if I can't reproduce the error anymore.

Updated by duerst (Martin Dürst) 2 months ago

  • Status changed from Assigned to Closed

I have now confirmed that this error does not resurface on two different checkouts. I'm therefore closing this issue. However, issue #18623, which I reported at about the same time, is still present.

Updated by duerst (Martin Dürst) 2 months ago

  • Status changed from Closed to Open

@hsbt (Hiroshi SHIBATA): I'm very sorry, but this error has resurfaced. Yesterday afternoon, it appeared in about half of the tries of make check. This morning, it appeared 5 times in 5 attempts.

When I run only the tests in the file, with make test-all TESTOPTS="-- test/rubygems/test_gem_commands_setup_command.rb", the error always appears. There is always a busy loop, taking up a full core. I have to kill the process with ctrl-C, and don't get an error message. I don't remember how I got the Gem::FilePermissionError in the initial description.

Please tell me anything else I should try. The problem seems to be intermittent and may be local to my setup.

Actions

Also available in: Atom PDF