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

fix: add authorization_interceptor and db_interceptor to async channel #2467

Merged
merged 9 commits into from
Dec 18, 2024

Conversation

brcarry
Copy link
Contributor

@brcarry brcarry commented Dec 18, 2024

No description provided.

- Support async delete, get, insert, query, search, hybrid_search, upsert, create_collection, drop_collection, describe_collection
- Support adding interceptor to aio channel
- Retry checking connect state instead of channel_ready_future in connect_milvus

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
… "_async" check, optimize "_wait_for_channel_ready"

- Refactor AsyncGrpcHandler to inherit GrpcHandler Class, enabling reuse of existing sync methods
- Remove unnecessary "_async" check in async methods
- Replace previous polling logic `_async_channel.get_state()` by `_async_channel.channel_ready()` in `_wait_for_channel_ready`

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
- Provide only asynchronous interfaces in AsyncMilvusClient
- Convert `_prepare_row/batch_insert/upsert_request`, `create_index`, and `load_collection` and their related functions to asynchronous implementations
- Retain only functions being used in async_utility.py

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
… for async client

- Update `__init__.py` to allow importing AsyncMilvusClient
- Add a simple code example for AsyncMilvusClient
- Add the previously missing `_async_create_collection_with_schema` method

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
- Add `_async` parameter in `connections.py` to determine whether to establish a synchronous or asynchronous connection
- Fix `__all__` is not sorted in `__init__.py` which failed in code lint check

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
- Rename `async_*` methods as `async def` already indicates this is an async method. For example: `async_create_collection` → `create_collection`
- Add a class doc for `AsyncMilvusClient`
- Remove commented-out code in example

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
…annel

Signed-off-by: Ruichen Bao <ruichen.bao@zju.edu.cn>
@mergify mergify bot added the dco-passed label Dec 18, 2024
@brcarry brcarry changed the title fix: add authorization_interceptor and db_interceptor to async channel fix: add authorization_interceptor and db_interceptor to async channel Dec 18, 2024
@mergify mergify bot added the ci-passed label Dec 18, 2024
@czs007
Copy link
Contributor

czs007 commented Dec 18, 2024

/approve
/lgtm

@sre-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: brcarry, czs007

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@sre-ci-robot sre-ci-robot merged commit 52c366c into milvus-io:master Dec 18, 2024
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants