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

Support connections to Unix domain sockets #92

Merged
merged 15 commits into from
Oct 10, 2023

Conversation

apeschar
Copy link

It's not currently possible to connect to a Redis server that uses Unix domain sockets.

Using Unix domain sockets is handy because it allows using filesystem permissions to control access, and because there's no need to worry about conflicting ports.

This PR introduces support for Unix domain sockets by setting the socket path in the host and setting port to 0.

I've taken this approach instead of extending the connection_spec or turning it into a variant type because I suspect a lot of code uses connection_spec directly and this would be incompatible.

(I think it would be ideal if we supported a single string (redis:// URL) to specify connection information, as this makes managing client configuration a lot easier and allows extending supported connection types and options without having to change the code that uses this library. But I think that's for another day.)

.gitignore Show resolved Hide resolved
Copy link
Collaborator

@c-cube c-cube left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, only a few details to iron out :)

src/s.ml Show resolved Hide resolved
src/s.ml Show resolved Hide resolved
@apeschar
Copy link
Author

apeschar commented Oct 9, 2023

I rebased and added the connection_spec_unix_socket.

Have a look at my comment on your suggestion to see if that makes sense or if I'm still missing something. :)

@apeschar apeschar requested a review from c-cube October 9, 2023 11:11
@c-cube c-cube merged commit 6f4015b into 0xffea:master Oct 10, 2023
3 checks passed
@c-cube
Copy link
Collaborator

c-cube commented Oct 10, 2023

thank you! :)

@apeschar
Copy link
Author

Thank you for merging! 🎉

@apeschar apeschar deleted the unix-sockets branch October 10, 2023 16:27
@c-cube
Copy link
Collaborator

c-cube commented Oct 10, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants