-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[Bug]: In TLS env milvus client breaking healthCheck() if not configured database name in clientConfig #35650
Comments
/assign @Presburger |
/unassign @yanliang567 |
/assign @SimFG |
@manishkuri Is there any error message when the database is not set? |
@SimFG io.grpc.StatusRuntimeException: UNIMPLEMENTED |
@manishkuri can you show the whole error message? And are you using the v2.3.11 milvus, what version of attu did you use? |
so I was calling it via Attu and getting an error msg: 'Milvus is not ready yet.' |
the attu version might be too old right? I would say you should use attu with 2.3.x or 2.4.x |
@xiaofan-luan sorry for the earlier wrong info, I was using Attu version v2.4 |
@manishkuri Can you upload the proxy node log when the error occurs? |
@SimFG |
@manishkuri |
It's a bit strange, why does the java-sdk stack appear when using attu? In addition, the version of this sdk seems to be relatively old, which is 2.3.3 |
@SimFG above request I hit directly via SDK client without dbName. I think it will create same scenario. |
from the java sdk, we don't support any kind of db operation right now. @yhmo can you double confirm |
but I'm also confused since attu is using nodejs client but your test seems to be running on java |
In milvus, there is always a default database named "default". All the sdks are using the default db name to connect, including python/java/nodejs sdk. The Attu is using nodejs sdk. So, if you didn't specify a database name, no matter what kind of sdk, the client will use the "default" db name to connect, it should be ok to work. I just tested your use case, and I didn't get the error you encountered. Please look at my test workflow to see if there is any difference from yours.
The milvus.yaml
By Java SDK v2.3.3, no problem.
The database name is "default", it connects successfully. Even if I set the database name to be "" (an empty string), it also connects successfully. |
Then our Istio virtual service might be doing something bad here. let me check |
@yanliang567 , @xiaofan-luan , @SimFG It's in our istio service routing logic. we made it mandatory to have a dbName in the header. Keeping an optional dbName in case of tls case will fix our issue. Please help us reviewing or merging this pr - zilliztech/attu#641 |
@manishkuri @shanghaikid please help to check it. |
@shanghaikid is helping on the review |
thanks! |
Is there an existing issue for this?
Environment
Current Behavior
In case of TLS disabled env, Attu connects with Milvus without asking for dbName But
When we make a call from Attu to Milvus in a TLS-enabled env, Attu breaks on milvusClient.healthCheck().
here - https://github.com/zilliztech/attu/blob/6fb43dab943630304d69efe384d0ea260183b3a3/server/src/milvus/milvus.service.ts#L72
in this case, when I also pass the dbName in clientConfig during the Attu call, it successfully connects with it.
changes added to attu code:
Milvus Log
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: