-
Notifications
You must be signed in to change notification settings - Fork 89
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
ssl recv timeout on mysql/percona 5.7 connection with TLS enabled #249
Comments
I'm also experiencing this same issue. Downgrading to Erlang 21.1.4 worked. |
After running a
I have been able to restore original behaviour with the following change to mariaex:
However, I am only passingly familiar with Elixir and even more unfamiliar with Erlang. As such, I do not know what implications this change may have. From what I can make of the code, it seems that this works for similar reasons as described in the line 814 up the upstream change: erlang/otp@6168cf2?diff=unified#diff-f053ce3c6b9ffc18f497e4bcbc9661f2R814. Can any maintainers validate this would be a safe change? I'd be happy to turn it into a pull request. |
Setting |
Environment
Description
Starting from
OTP-21.2.0
, when trying to connect to a mysql instance with TLS enabled from an Elixir/Ecto application the:ssl.recv()
call fails due a timeout with the following stacktrace:For the test we used Percona and Mysql 5.7 official docker images.
Please note that it works fine with older OTP versions (for instance
OTP-21.1.4
)Also the Erlang layer looks good, it's possible to connect and query the db in pure Erlang
An educated guess is that in the new OTP versions some lib changed behaviour and it breaks the Mariaex flow
How to reproduce
127.0.0.1:3306
socket withtlsv1.2
to thetest_db
database.(you can also use
mysql:5.7
image andtlsv1.1
)The easiest way is to create a new ecto project
configure Ecto
run it
The text was updated successfully, but these errors were encountered: