grpc / grpc/grpc

Abstract socket fails to connect in Ruby gRPC

Open
#35,475 1 comment 0 reactions 1 assignee Claimed by @apolcyn View on GitHub
kind/bug lang/ruby priority/P2
Dominant language
C++
Stars
45.3k
Forks
11.4k
Avg merge
2d 12h
Merged PRs (30d)
47

Description

### What version of gRPC and what language are you using?
gRPC v1.6.0 Ruby

### What operating system (Linux, Windows,...) and version?
Linux

### What runtime / compiler are you using (e.g. python version or version of gcc)
Ruby 3.2.0

### What did you do?
There's an unix abstract socket that I'd like to connect to:
```
stub = TinkService::Stub.new("unix-abstract:my-abstract-socket.sock", :this_channel_is_insecure)
stub.my_request(body)
```

### What did you expect to see?
gRPC sends requests to the socket

### What did you see instead?
```
GRPC::Unavailable: 14:failed to connect to all addresses; last error: UNKNOWN: ipv4:[redacted]: HTTP proxy returned response code 503. debug_error_string:{UNKNOWN:Error received from peer {created_time:"2024-01-08T17:51:52.276169546+00:00", grpc_status:14, grpc_message:"failed to connect to all addresses; last error: UNKNOWN: ipv4:[redacted]: HTTP proxy returned response code 503"}}
```

I tried to run a socat command to proxy to this abstract socket through a traditional socket:
```
socat UNIX-LISTEN:/tmp/capturethis.sock ABSTRACT-CONNECT:my-abstract-socket.sock
```
and the following ruby code worked:
```
stub = TinkService::Stub.new("unix:/tmp/capturethis.sock", :this_channel_is_insecure)
stub.my_request(body)
```

Did I use the wrong syntax for abstract sockets or is this a bug with Ruby gRPC?
### Anything else we should know about your project / environment?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.