-
Notifications
You must be signed in to change notification settings - Fork 914
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
Connecting to Dragonfly via memcache client doesn't work #3071
Comments
@rocktavious could it be this client library used the binary protocol? |
Yes, dalli uses the binary protocol by default. But https://www.dragonflydb.io/faq/how-to-connect-to-memcached has explicit example code that uses the binary protocol, and I don't see any other documents indicating it only supports the text protocol? |
I am sorry, it is indeed confusing. @Niennienzz we should probably clarify this question does not refer to Dragonfly. @eapache-opslevel it's about memcached and not about Dragonfly, the whole FAQ is about other in-memory systems, Dragonfly docs are located here: https://dragonflydb.io/docs |
I will update both the FAQ and the Docs pages shortly. |
OK, thanks for the clarification, so Dragonfly only supports the text-based memcached protocol? Do you know if that is the (very old) "ASCII" protocol, or the (much newer) "meta" protocol? Memcached's own documentation on this point is incredibly out of date, but https://github.com/petergoldstein/dalli/wiki/Requirements-and-Integrations makes it sound like there are two text-based protocols now. |
specifically:
|
I think we support what it is called an "ascii" protocol, i.e. set, get etc. It should not be too hard to implement the meta protocol, if you open an issue maybe someone from the community will add the support for it. |
Describe the bug
We are trying to use the memcached compliant API to connect a service via a Ruby client and we are getting errors. This same client works with an AWS Elasticache in memcache mode.
The dragonfly configuration
The Ruby app in the same kubernetes cluster showing that we can resolve the DNS
Also from the shell inside the Ruby pod a sample showing we can connect
But when we go to use the client library we get this
I have filed a ticket with the client library but they point back to dragonfly not being fully compliant as the culprit since it works fine with actual memcached. petergoldstein/dalli#1003
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Ability to make connections using memcached clients
Screenshots
See the above terminal sessions
Environment (please complete the following information):
The text was updated successfully, but these errors were encountered: