Connection refused error after updating to 1.6.X in a Rails project running inside docker
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 38/100
Hướng nghiên cứu
Reproduce the failure with the Ruby 3.1.2-slim Docker image and the listed rdbg command, then inspect debug-1.6.0/lib/debug/client.rb at connect_unix and compare its socket naming with debug 1.5.0. Done means rdbg -A attaches to the running Rails/Puma process after updating to a 1.6 release.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Your environment
ruby -v:ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [aarch64-linux]rdbg -v: working:rdbg 1.5.0, non-workingrdbg 1.6.X
Describe the bug
I'm using the official Ruby 3.1.2-slim docker image. After updating the debug gem from 1.5.0 to 1.6.X, I cannot attach to the running process any more.
I'm running a Rails project with the latest Rails version (7.0.4) and the Puma web server. This is the command I'm running:
rdbg --open --nonstop -c -- rails s -b '0.0.0.0'
Using debug 1.5.0, all is well:
❯ dc exec web rdbg -A
# No sourcefile available for /usr/local/bundle/gems/puma-5.6.5/lib/puma/single.rb
=>#0 [C] Thread#join at /usr/local/bundle/gems/puma-5.6.5/lib/puma/single.rb:61
#1 Puma::Single#run at /usr/local/bundle/gems/puma-5.6.5/lib/puma/single.rb:61
# and 15 frames (use `bt' command for all frames)
Stop by SIGURG
(rdbg:remote) c # continue command
Socket name (automatically chosen by the debug gem): /tmp/ruby-debug-sock-0/ruby-debug-ruby-debug-1
Using debug 1.6.X, the connection does not work any more:
/usr/local/lib/ruby/3.1.0/socket.rb:64:in `connect': Connection refused - connect(2) for /tmp/ruby-debug-sock-0/ruby-debug-UnknownUser-1 (Errno::ECONNREFUSED)
from /usr/local/lib/ruby/3.1.0/socket.rb:64:in `connect_internal'
from /usr/local/lib/ruby/3.1.0/socket.rb:137:in `connect'
from /usr/local/lib/ruby/3.1.0/socket.rb:1078:in `unix'
from /usr/local/bundle/gems/debug-1.6.0/lib/debug/client.rb:158:in `connect_unix'
from /usr/local/bundle/gems/debug-1.6.0/lib/debug/client.rb:108:in `initialize'
from /usr/local/bundle/gems/debug-1.6.0/exe/rdbg:31:in `new'
from /usr/local/bundle/gems/debug-1.6.0/exe/rdbg:31:in `<top (required)>'
from /app/bin/rdbg:29:in `load'
from /app/bin/rdbg:29:in `<main>'
Socket name (automatically chosen by the debug gem): /tmp/ruby-debug-sock-0/ruby-debug-UnknownUser-1
Notice the change in the socket name, maybe this has something to do with this issue? The socket does exist, though, and permissions seem correct.
To Reproduce
Update debug to 1.6.X. I've tried all released 1.6 versions, none of them is working. Going back to 1.5 resolves the issue for me.
Expected behavior
rdbg -A connects to the running process.
- Ngôn ngữ chính
- Ruby
- Star
- 1.3k
- Fork
- 146
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của ruby/debug
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
-
Support exceptionOptions in setExceptionBreakpoints to catch arbitrary exception classes via DAP Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 55/100
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
バグ
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
-
Version bump for OpenVox 9 Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
voxpupuli/puppet-epel#186 · 1 bình luận ·
-
external_created_at is no longer used for the message timestamp since the new message UI (v4.4.0) Đang mởBug Frontend
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100