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

System specs related to multiple sessions fail running specs locally #10

Closed
mdesantis opened this issue Jul 17, 2020 · 9 comments
Closed
Labels
question Further information is requested

Comments

@mdesantis
Copy link

mdesantis commented Jul 17, 2020

Hi @palkan! I love your work!

I'm digging into your amazing blog post about cuprite, but I'm not using Docker because I feel uncomfortable about it (I'd like to understand how things work locally before adding one more level of abstraction). So, I stumbled upon this repo which implements the code you wrote in the blog post, and the application on development works great; but the system specs related to multiple sessions fail. Example here:

> bundle exec rspec spec/system/chat/messaging_spec.rb:13
Run options: include {:locations=>{"./spec/system/chat/messaging_spec.rb"=>[13]}}

Randomized with seed 19749

🐢  Precompiling assets.
Finished in 0.05 seconds

Workspaces -> Chat
  I can send a message (FAILED - 1)

Failures:

  1) Workspaces -> Chat I can send a message
     Failure/Error: expect(page).to have_text "Hi there"
       expected to find text "Hi there" in "You will receive new messages as they come"
     
     [Screenshot]: tmp/capybara/screenshots/failures_r_spec_example_groups_workspaces_chat_i_can_send_a_message_495.png

     
     # ./spec/system/chat/messaging_spec.rb:20:in `block (4 levels) in <top (required)>'
     # ./spec/system/chat/messaging_spec.rb:19:in `block (3 levels) in <top (required)>'
     # ./spec/system/chat/messaging_spec.rb:14:in `block (2 levels) in <top (required)>'
     # ./spec/system/support/better_rails_system_tests.rb:29:in `block (2 levels) in <compiled>'

Finished in 3.35 seconds (files took 1.08 seconds to load)
1 example, 1 failure

Failed examples:

rspec ./spec/system/chat/messaging_spec.rb:13 # Workspaces -> Chat I can send a message

I found that AnyCable is rejecting connections for some reason, as you can see by the logs:

bundle exec anycable
Starting AnyCable gRPC server (pid: 139779, workers_num: 30)
AnyCable version: 1.0.1 (proto_version: v1)
gRPC version: 1.30.0
Serving Rails application from ./config/environment.rb
Broadcasting Redis channel: __anycable__
RPC server is starting...
RPC server is listening on 127.0.0.1:50051
RPC Connect: <AnyCable::ConnectionRequest: env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {}, istate: {}>>
Started "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 11:07:45 +0200
RPC Command: <AnyCable::CommandMessage: command: "subscribe", identifier: "{\"channel\":\"WorkspaceChannel\",\"id\":\"demo\"}", connection_identifiers: "{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}", data: "", env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {"__ltags__"=>"[]"}, istate: {}>>
WorkspaceChannel is transmitting the subscription confirmation
RPC Command: <AnyCable::CommandMessage: command: "subscribe", identifier: "{\"channel\":\"ChatChannel\",\"id\":\"demo\"}", connection_identifiers: "{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}", data: "", env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {"__ltags__"=>"[]"}, istate: {}>>
ChatChannel is transmitting the subscription confirmation
RPC Command: <AnyCable::CommandMessage: command: "subscribe", identifier: "{\"channel\":\"ListChannel\",\"id\":\"1\",\"workspace\":\"demo\"}", connection_identifiers: "{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}", data: "", env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {"__ltags__"=>"[]"}, istate: {}>>
ListChannel is transmitting the subscription confirmation
RPC Command: <AnyCable::CommandMessage: command: "subscribe", identifier: "{\"channel\":\"ListChannel\",\"id\":\"2\",\"workspace\":\"demo\"}", connection_identifiers: "{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}", data: "", env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {"__ltags__"=>"[]"}, istate: {}>>
ListChannel is transmitting the subscription confirmation
RPC Command: <AnyCable::CommandMessage: command: "subscribe", identifier: "{\"channel\":\"ListChannel\",\"id\":\"3\",\"workspace\":\"demo\"}", connection_identifiers: "{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}", data: "", env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>"_session_id=874ac605b6f3ceaaa0be00371f71b70e; _anycable_rails_demo_session=PI2mlAgQBnSo1J%2BzBM3ZL0dFoHWZ7onaMSxwhdsTu89SyyGVjeBagk1908puK%2FiBIcdkU9iD7RY2nWAutLth5C5QYvdsWp8LPbePz4rLMfEJ3oqdrO36qhiVrIO26W1oD6SGgTucXuU%2F%2Bg3dO82%2BNgKv7JO8GmK7waZ30RwcPEYXRtD0T3zjLx4NusQJM2HXjjOofaOy7kovK1H5MWPl%2FbUZ8XhBVNTuwEd5zjeEfIgn6LdiYib1%2FNsSP0d8FxhQxwaB8Hr32Wc0Yg5476sqwe8sZL1FPph1%2BvQYPB5b3JeuKIwo6E0Q7zqecF6%2Fnt9dTy496HcfcoHGNOwH6b0%2BrW9GFkrhXXJ%2FhRG5mQ%3D%3D--Dzu%2BAYRuTGiB4CUZ--O7UigW8Au7fVfiDYb2n2Xw%3D%3D; uid=maurizio%2Fglkoh"}, cstate: {"__ltags__"=>"[]"}, istate: {}>>
ListChannel is transmitting the subscription confirmation
RPC Connect: <AnyCable::ConnectionRequest: env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>""}, cstate: {}, istate: {}>>
Started "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 11:09:34 +0200
An unauthorized connection attempt was rejected
Finished "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 11:09:34 +0200 (Rejected)
anycable-go --debug
 DEBUG 2020-07-17T09:07:42.564Z context=main 🔧 🔧 🔧 Debug mode is on 🔧 🔧 🔧
  INFO 2020-07-17T09:07:42.564Z context=main Starting AnyCable 1.0.1-1551caf (pid: 140297, open file limit: 1024)
 DEBUG 2020-07-17T09:07:42.564Z context=disconnector Calls rate: 10ms         
  INFO 2020-07-17T09:07:42.564Z context=main Handle WebSocket connections at http://localhost:8080/cable
  INFO 2020-07-17T09:07:42.564Z context=main Handle health connections at http://localhost:8080/health
 DEBUG 2020-07-17T09:07:42.564Z context=http Starting WebSocket server at http://localhost:8080
  INFO 2020-07-17T09:07:42.564Z context=rpc RPC controller initialized: localhost:50051 (concurrency: 28, proto_versions: v0,v1)
  INFO 2020-07-17T09:07:42.565Z context=pubsub Subscribed to Redis channel: __anycable__

 DEBUG 2020-07-17T09:07:45.321Z context=rpc Authenticate response: status:SUCCESS identifiers:"{\"user\":\"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o\"}" transmissions:"{\"type\":\"welcome\"}" env:<cstate:<key:"__ltags__" value:"[]" > > 
 DEBUG 2020-07-17T09:07:45.321Z context=node sid=339X7KGEgxdn-ny8y73dX websocket session established
 DEBUG 2020-07-17T09:07:45.321Z context=hub sid=339X7KGEgxdn-ny8y73dX Registered with identifiers: {"user":"Z2lkOi8vYW55Y2FibGUvVXNlci9nbGtvaD9uYW1lPW1hdXJpemlvJmlkPWdsa29o"}
 DEBUG 2020-07-17T09:07:45.322Z context=node sid=339X7KGEgxdn-ny8y73dX Incoming message: &{subscribe {"channel":"WorkspaceChannel","id":"demo"} }
 DEBUG 2020-07-17T09:07:45.453Z context=rpc Command response: status:SUCCESS streams:"workspace:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9Xb3Jrc3BhY2UvMQ" transmissions:"{\"identifier\":\"{\\\"channel\\\":\\\"WorkspaceChannel\\\",\\\"id\\\":\\\"demo\\\"}\",\"type\":\"confirm_subscription\"}" env:<> 
 DEBUG 2020-07-17T09:07:45.453Z context=node sid=339X7KGEgxdn-ny8y73dX Subscribed to channel: {"channel":"WorkspaceChannel","id":"demo"}
 DEBUG 2020-07-17T09:07:45.453Z channel={"channel":"WorkspaceChannel","id":"demo"} context=hub sid=339X7KGEgxdn-ny8y73dX stream=workspace:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9Xb3Jrc3BhY2UvMQ Subscribed               
 DEBUG 2020-07-17T09:07:45.453Z context=node sid=339X7KGEgxdn-ny8y73dX Incoming message: &{subscribe {"channel":"ChatChannel","id":"demo"} }
 DEBUG 2020-07-17T09:07:45.466Z context=rpc Command response: status:SUCCESS streams:"chat:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9Xb3Jrc3BhY2UvMQ" transmissions:"{\"identifier\":\"{\\\"channel\\\":\\\"ChatChannel\\\",\\\"id\\\":\\\"demo\\\"}\",\"type\":\"confirm_subscription\"}" env:<istate:<key:"workspace" value:"Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9Xb3Jrc3BhY2UvMQ" > > 
 DEBUG 2020-07-17T09:07:45.466Z context=node sid=339X7KGEgxdn-ny8y73dX Subscribed to channel: {"channel":"ChatChannel","id":"demo"}
 DEBUG 2020-07-17T09:07:45.466Z channel={"channel":"ChatChannel","id":"demo"} context=hub sid=339X7KGEgxdn-ny8y73dX stream=chat:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9Xb3Jrc3BhY2UvMQ Subscribed               
 DEBUG 2020-07-17T09:07:45.466Z context=node sid=339X7KGEgxdn-ny8y73dX Incoming message: &{subscribe {"channel":"ListChannel","id":"1","workspace":"demo"} }
 DEBUG 2020-07-17T09:07:45.517Z context=rpc Command response: status:SUCCESS streams:"list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzE" transmissions:"{\"identifier\":\"{\\\"channel\\\":\\\"ListChannel\\\",\\\"id\\\":\\\"1\\\",\\\"workspace\\\":\\\"demo\\\"}\",\"type\":\"confirm_subscription\"}" env:<> 
 DEBUG 2020-07-17T09:07:45.517Z context=node sid=339X7KGEgxdn-ny8y73dX Subscribed to channel: {"channel":"ListChannel","id":"1","workspace":"demo"}
 DEBUG 2020-07-17T09:07:45.517Z channel={"channel":"ListChannel","id":"1","workspace":"demo"} context=hub sid=339X7KGEgxdn-ny8y73dX stream=list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzE Subscribed               
 DEBUG 2020-07-17T09:07:45.517Z context=node sid=339X7KGEgxdn-ny8y73dX Incoming message: &{subscribe {"channel":"ListChannel","id":"2","workspace":"demo"} }
 DEBUG 2020-07-17T09:07:45.524Z context=rpc Command response: status:SUCCESS streams:"list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzI" transmissions:"{\"identifier\":\"{\\\"channel\\\":\\\"ListChannel\\\",\\\"id\\\":\\\"2\\\",\\\"workspace\\\":\\\"demo\\\"}\",\"type\":\"confirm_subscription\"}" env:<> 
 DEBUG 2020-07-17T09:07:45.524Z context=node sid=339X7KGEgxdn-ny8y73dX Subscribed to channel: {"channel":"ListChannel","id":"2","workspace":"demo"}
 DEBUG 2020-07-17T09:07:45.524Z channel={"channel":"ListChannel","id":"2","workspace":"demo"} context=hub sid=339X7KGEgxdn-ny8y73dX stream=list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzI Subscribed               
 DEBUG 2020-07-17T09:07:45.524Z context=node sid=339X7KGEgxdn-ny8y73dX Incoming message: &{subscribe {"channel":"ListChannel","id":"3","workspace":"demo"} }
 DEBUG 2020-07-17T09:07:45.529Z context=rpc Command response: status:SUCCESS streams:"list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzM" transmissions:"{\"identifier\":\"{\\\"channel\\\":\\\"ListChannel\\\",\\\"id\\\":\\\"3\\\",\\\"workspace\\\":\\\"demo\\\"}\",\"type\":\"confirm_subscription\"}" env:<> 
 DEBUG 2020-07-17T09:07:45.529Z context=node sid=339X7KGEgxdn-ny8y73dX Subscribed to channel: {"channel":"ListChannel","id":"3","workspace":"demo"}
 DEBUG 2020-07-17T09:07:45.529Z channel={"channel":"ListChannel","id":"3","workspace":"demo"} context=hub sid=339X7KGEgxdn-ny8y73dX stream=list:Z2lkOi8vYW55Y2FibGUtcmFpbHMtZGVtby9MaXN0LzM Subscribed               
 DEBUG 2020-07-17T09:09:34.320Z context=rpc Authenticate response: status:FAILURE transmissions:"{\"type\":\"disconnect\",\"reason\":\"unauthorized\",\"reconnect\":false}" 
 ERROR 2020-07-17T09:09:34.320Z context=ws Websocket session initialization failed: Application error:

Do you have any clue about how can be fixed? BTW I'm using the repo as-it-is, and these are the command I run, without any env var set:

bundle exec anycable
anycable-go
bundle exec rspec

anycable-go version is 1.0.1-1551caf.

Cheers!

@palkan
Copy link
Member

palkan commented Jul 17, 2020

Hey! Thanks for the feedback!

Looks like domains mismatch for web server and AnyCable:

RPC Connect: <AnyCable::ConnectionRequest: env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>""}, cstate: {}, istate: {}>>
Started "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 11:09:34 +0200

Thus, cookies are not working.

Do you use demo/dockerless branch?

@mdesantis
Copy link
Author

mdesantis commented Jul 17, 2020

Looks like domains mismatch for web server and AnyCable

🤔 it makes sense, but I can't seem to be able to change it, neither setting CABLE_URL or hardcoding config.action_cable.url = ActionCable.server.config.url = "ws://127.0.0.1:8080/cable":

> env CABLE_URL='ws://127.0.0.1:8080/cable' bundle exec anycable
Starting AnyCable gRPC server (pid: 249815, workers_num: 30)
AnyCable version: 1.0.1 (proto_version: v1)
gRPC version: 1.30.0
Serving Rails application from ./config/environment.rb
Broadcasting Redis channel: __anycable__
RPC server is starting...
RPC server is listening on 127.0.0.1:50051
RPC Connect: <AnyCable::ConnectionRequest: env: <AnyCable::Env: url: "http://localhost:8080/cable", headers: {"REMOTE_ADDR"=>"127.0.0.1", "cookie"=>""}, cstate: {}, istate: {}>>
Started "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 14:47:41 +0200
An unauthorized connection attempt was rejected
Finished "/cable" [AnyCable] for 127.0.0.1 at 2020-07-17 14:47:41 +0200 (Rejected)

Do you use demo/dockerless branch?

No, I'm on the master branch

@palkan
Copy link
Member

palkan commented Jul 17, 2020

I can't seem to be able to change it, neither setting CABLE_URL or hardcoding

Can you check the page's source code and see what's the value for action_cable meta tag?

No, I'm on the master branch

I suggest switching to #1 or at least looking at this commit.

@mdesantis
Copy link
Author

On #1 I get a GRPC error. Seems something related to anycable-rack-server:

#<Thread:0x00007fcf241d57b8@/home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:59 run> terminated with exception (report_on_exception is true):
Traceback (most recent call last):
	18: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:62:in `block in listen'
	17: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:62:in `each'
	16: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/middleware.rb:77:in `block in init_connection'
	15: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/connection.rb:38:in `handle_open'
	14: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/connection.rb:82:in `rpc_connect'
	13: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/rpc/client.rb:22:in `connect'
	12: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:59:in `with'
	11: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:59:in `handle_interrupt'
	10: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:62:in `block in with'
	 9: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:62:in `handle_interrupt'
	 8: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:63:in `block (2 levels) in with'
	 7: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/rpc/client.rb:23:in `block in connect'
	 6: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/service.rb:171:in `block (3 levels) in rpc_stub_class'
	 5: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/client_stub.rb:177:in `request_response'
	 4: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/interceptors.rb:170:in `intercept!'
	 3: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/client_stub.rb:178:in `block in request_response'
	 2: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:376:in `request_response'
	 1: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:180:in `attach_status_results_and_complete_call'
/home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:29:in `check_status': 12:. debug_error_string:{"created":"@1594999903.082805854","description":"Error received from peer ipv6:[::1]:50051","file":"src/core/lib/surface/call.cc","file_line":1055,"grpc_message":"","grpc_status":12} (GRPC::Unimplemented)
	20: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:73:in `block in listen'
	19: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:73:in `ensure in block in listen'
	18: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:81:in `close'
	17: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/socket.rb:81:in `each'
	16: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/middleware.rb:78:in `block in init_connection'
	15: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/connection.rb:43:in `handle_close'
	14: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/connection.rb:86:in `rpc_disconnect'
	13: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/rpc/client.rb:55:in `disconnect'
	12: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:59:in `with'
	11: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:59:in `handle_interrupt'
	10: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:62:in `block in with'
	 9: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:62:in `handle_interrupt'
	 8: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/connection_pool-2.2.3/lib/connection_pool.rb:63:in `block (2 levels) in with'
	 7: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/anycable-rack-server-0.2.0/lib/anycable/rack/rpc/client.rb:56:in `block in disconnect'
	 6: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/service.rb:171:in `block (3 levels) in rpc_stub_class'
	 5: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/client_stub.rb:177:in `request_response'
	 4: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/interceptors.rb:170:in `intercept!'
	 3: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/client_stub.rb:178:in `block in request_response'
	 2: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:376:in `request_response'
	 1: from /home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:180:in `attach_status_results_and_complete_call'
/home/user/.asdf/installs/ruby/2.6.5/lib/ruby/gems/2.6.0/gems/grpc-1.30.0-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:29:in `check_status': 12:. debug_error_string:{"created":"@1594999903.083325369","description":"Error received from peer ipv6:[::1]:50051","file":"src/core/lib/surface/call.cc","file_line":1055,"grpc_message":"","grpc_status":12} (GRPC::Unimplemented)

@palkan
Copy link
Member

palkan commented Jul 17, 2020

Hm, that's strange. Could there be any other gRPC server running and listening on the same port; maybe, dev env. What is the output of lsof -i :50051 before running tests? (This happens in test env, right?)

@palkan
Copy link
Member

palkan commented Aug 17, 2020

@mdesantis Have you figured it out?

@palkan palkan added the question Further information is requested label Aug 17, 2020
@mdesantis
Copy link
Author

Hey, sorry for the late reply; I haven't figured it out yet, I'm away from keyboard currently, hopefully I'll dig into it at the end of August!

@palkan
Copy link
Member

palkan commented Oct 30, 2020

@mdesantis Ping

@palkan
Copy link
Member

palkan commented Dec 28, 2020

Closed as stale

@palkan palkan closed this as completed Dec 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants