Skip to content

[Bug]: [Nightly][kafka][bitmap] Insert 3k data failed reporting Broker: Message size too large #36029

Closed
@NicoYuan1986

Description

Is there an existing issue for this?

  • I have searched the existing issues

Environment

- Milvus version: 11325d9
- Deployment mode(standalone or cluster):cluster
- MQ type(rocksmq, pulsar or kafka):    kafka
- SDK version(e.g. pymilvus v2.0.0rc2):
- OS(Ubuntu or CentOS): 
- CPU/Memory: 
- GPU: 
- Others:

Current Behavior

Insert 3k data failed reporting Broker: Message size too large.

[pytest : test] [2024-09-05 19:02:14 - ERROR - pymilvus.decorators]: RPC error: [batch_insert], <MilvusException: (code=65535, message=Broker: Message size too large)>, <Time:{'RPC start': '2024-09-05 19:02:13.345205', 'RPC error': '2024-09-05 19:02:14.055647'}> (decorators.py:140)
[pytest : test] [2024-09-05 19:02:14 - ERROR - ci_test]: Traceback (most recent call last):
[pytest : test]   File "/milvus/tests/python_client/utils/api_request.py", line 32, in inner_wrapper
[pytest : test]     res = func(*args, **_kwargs)
[pytest : test]   File "/milvus/tests/python_client/utils/api_request.py", line 63, in api_request
[pytest : test]     return func(*arg, **kwargs)
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/orm/collection.py", line 518, in insert
[pytest : test]     return conn.batch_insert(
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/decorators.py", line 141, in handler
[pytest : test]     raise e from e
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/decorators.py", line 137, in handler
[pytest : test]     return func(*args, **kwargs)
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/decorators.py", line 176, in handler
[pytest : test]     return func(self, *args, **kwargs)
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/decorators.py", line 116, in handler
[pytest : test]     raise e from e
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/decorators.py", line 86, in handler
[pytest : test]     return func(*args, **kwargs)
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/client/grpc_handler.py", line 582, in batch_insert
[pytest : test]     raise err from err
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/client/grpc_handler.py", line 576, in batch_insert
[pytest : test]     check_status(response.status)
[pytest : test]   File "/usr/local/lib/python3.8/site-packages/pymilvus/client/utils.py", line 63, in check_status
[pytest : test]     raise MilvusException(status.code, status.reason, status.error_code)
[pytest : test] pymilvus.exceptions.MilvusException: <MilvusException: (code=65535, message=Broker: Message size too large)>
[pytest : test]  (api_request.py:45)
[pytest : test] [2024-09-05 19:02:14 - ERROR - ci_test]: (api_response) : <MilvusException: (code=65535, message=Broker: Message size too large)> (api_request.py:46)
[pytest : test]     def test_bitmap_insert_after_loading(self, request, primary_field, auto_id):
[pytest : test]         """
[pytest : test]         target:
[pytest : test]             1. insert data after building `BITMAP` index and loading collection
[pytest : test]         method:
[pytest : test]             1. build index and loaded an empty collection
[pytest : test]             2. insert 3k data
[pytest : test]             3. check no indexed data
[pytest : test]             4. flush collection, re-build index and refresh load collection
[pytest : test]             5. row number of indexed data equal to insert data
[pytest : test]         expected:
[pytest : test]             1. insertion is successful
[pytest : test]             2. segment row number == inserted rows
[pytest : test]         """
[pytest : test]         # init params
[pytest : test]         collection_name, nb = f"{request.function.__name__}_{primary_field}_{auto_id}", 3000
[pytest : test]     
[pytest : test]         # create a collection with fields that can build `BITMAP` index
[pytest : test]         self.collection_wrap.init_collection(
[pytest : test]             name=collection_name,
[pytest : test]             schema=cf.set_collection_schema(
[pytest : test]                 fields=[primary_field, DataType.FLOAT16_VECTOR.name, *self.get_bitmap_support_dtype_names],
[pytest : test]                 field_params={primary_field: FieldParams(is_primary=True).to_dict},
[pytest : test]                 auto_id=auto_id
[pytest : test]             )
[pytest : test]         )
[pytest : test]     
[pytest : test]         # build `BITMAP` index on empty collection
[pytest : test]         index_params = {
[pytest : test]             **DefaultVectorIndexParams.IVF_SQ8(DataType.FLOAT16_VECTOR.name),
[pytest : test]             **DefaultScalarIndexParams.list_bitmap(self.get_bitmap_support_dtype_names)
[pytest : test]         }
[pytest : test]         self.build_multi_index(index_params=index_params)
[pytest : test]         assert sorted([n.field_name for n in self.collection_wrap.indexes]) == sorted(index_params.keys())
[pytest : test]     
[pytest : test]         # load collection
[pytest : test]         self.collection_wrap.load()
[pytest : test]     
[pytest : test]         # prepare 3k data (> 1024 triggering index building)
[pytest : test] >       self.collection_wrap.insert(data=cf.gen_values(self.collection_wrap.schema, nb=nb),
[pytest : test]                                     check_task=CheckTasks.check_insert_result)

Expected Behavior

pass

Steps To Reproduce

No response

Milvus Log

  1. link: https://jenkins.milvus.io:18080/blue/organizations/jenkins/Milvus%20Nightly%20CI(new)/detail/master/108/pipeline/135/
  2. log: artifacts-milvus-distributed-kafka-mdk-master-108-py-n-108-e2e-logs.tar.gz

Anything else?

No response

Metadata

Assignees

Labels

kind/bugIssues or changes related a bugtriage/acceptedIndicates an issue or PR is ready to be actively worked on.

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions