You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ensure actioncable connection is not a pinned connection
Fix thread safety issue in rails #53883
This was causing random errors in the db restore, generally during the first
run of the cypress test per rails boot. Sometimes, it would hang. Other
times, I'd get a segmentation fault. Other times, Bad file descriptor (Errno::EBADF)
in actioncable-7.2.2.2/lib/action_cable/subscription_adapter/postgresql.rb:107:in `wait_for_notify'.
I found that the prior commit helps to ensure the trigger disable and enable
are both run and not just disabled in the the case of an error. But, on top of
that, I found that rails had fixed a thread safety issue in action cable
subscriptions's usage of a database connections.
See: https://www.github.com/rails/rails/pull/53891 and https://www.github.com/rails/rails/issues/53883
"Action Cable must avoid using a pinned connection to subscribe to notifications as it can't be done in a thread safe way.
So it must ensure it has a dedicated connection for that."
0 commit comments