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

[Bug]: [benchmark][cluster] Show partition failed when drop partition in concurrent DQL & multi-partition scene #38372

Closed
1 task done
wangting0128 opened this issue Dec 11, 2024 · 4 comments
Assignees
Labels
kind/bug Issues or changes related a bug test/benchmark benchmark test triage/accepted Indicates an issue or PR is ready to be actively worked on.
Milestone

Comments

@wangting0128
Copy link
Contributor

wangting0128 commented Dec 11, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Environment

- Milvus version:master-20241210-7ea9c983-amd64
- Deployment mode(standalone or cluster):cluster
- MQ type(rocksmq, pulsar or kafka):pulsar    
- SDK version(e.g. pymilvus v2.0.0rc2):2.5.0rc124
- OS(Ubuntu or CentOS): 
- CPU/Memory: 
- GPU: 
- Others:

Current Behavior

argo task: fouramf-bitmap-scenes-tw86w
test case name: test_bitmap_locust_hybrid_index_cluster

server:

NAME                                                              READY   STATUS             RESTARTS         AGE     IP              NODE         NOMINATED NODE   READINESS GATES
fouramf-bitmap-scenes-tw86w-10-etcd-0                             1/1     Running            0                4h1m    10.104.25.193   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-etcd-1                             1/1     Running            0                4h1m    10.104.27.168   4am-node31   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-etcd-2                             1/1     Running            0                4h1m    10.104.21.213   4am-node24   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-datanode-d6645878c-hgjm4    1/1     Running            1 (4h1m ago)     4h1m    10.104.6.32     4am-node13   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-indexnode-5ff46cb9b44cgvz   1/1     Running            2 (4h1m ago)     4h1m    10.104.16.202   4am-node21   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-indexnode-5ff46cb9b4w46lt   1/1     Running            2 (4h1m ago)     4h1m    10.104.26.78    4am-node32   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-mixcoord-78c98c4967-62pl7   1/1     Running            1 (4h1m ago)     4h1m    10.104.6.31     4am-node13   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-proxy-5cbb8b444f-tshlt      1/1     Running            1 (4h1m ago)     4h1m    10.104.14.60    4am-node18   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-milvus-querynode-5996b96c6bjbg8s   1/1     Running            1 (4h1m ago)     4h1m    10.104.14.61    4am-node18   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-minio-0                            1/1     Running            0                4h1m    10.104.23.127   4am-node27   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-minio-1                            1/1     Running            0                4h1m    10.104.27.174   4am-node31   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-minio-2                            1/1     Running            0                4h1m    10.104.21.222   4am-node24   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-minio-3                            1/1     Running            0                4h1m    10.104.25.202   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-bookie-0                  1/1     Running            0                4h1m    10.104.25.195   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-bookie-1                  1/1     Running            0                4h1m    10.104.21.215   4am-node24   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-bookie-2                  1/1     Running            0                4h1m    10.104.27.179   4am-node31   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-bookie-init-kg8xb         0/1     Completed          0                4h1m    10.104.13.134   4am-node16   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-broker-0                  1/1     Running            0                4h1m    10.104.13.143   4am-node16   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-broker-1                  1/1     Running            0                4h1m    10.104.27.165   4am-node31   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-proxy-0                   1/1     Running            0                4h1m    10.104.13.132   4am-node16   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-proxy-1                   1/1     Running            0                4h1m    10.104.25.188   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-pulsar-init-8h4b5         0/1     Completed          0                4h1m    10.104.13.140   4am-node16   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-recovery-0                1/1     Running            0                4h1m    10.104.25.187   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-zookeeper-0               1/1     Running            0                4h1m    10.104.25.194   4am-node30   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-zookeeper-1               1/1     Running            0                4h1m    10.104.21.211   4am-node24   <none>           <none>
fouramf-bitmap-scenes-tw86w-10-pulsarv3-zookeeper-2               1/1     Running            0                4h1m    10.104.27.170   4am-node31   <none>           <none>

partitionID=454527759048375665 -> partition name="scene_test_partition_dx2Qffte"
{pod=~"fouramf-bitmap-scenes-tw86w-10-milvus-.*"} |~ "efbd5b23076d27d6f774ce63685f1d99"

截屏2024-12-11 16 40 52

| [2024/12/11 06:26:47.078 +00:00] [WARN] [proxy/impl.go:1421] ["DropPartition failed to WaitToFinish"] [traceID=efbd5b23076d27d6f774ce63685f1d99] [role=proxy] [db=default] [collection=fouram_IPSnBSas] [partition=scene_test_partition_hybrid_search_BwV46GtI] [error="partition not loaded[partition=454527759048375665]"] [BeginTS=454531064006443009] [EndTS=454531064006443009]

client log:

[2024-12-11 06:23:28,598 - DEBUG - fouram]: (api_response) : [Partition] {"name":"scene_test_partition_hybrid_search_BwV46GtI","collection_name":"fouram_IPSnBSas","description":""}, [requestId: 6f6a741c-b788-11ef-a841-92fa84381d28] (api_request.py:44)
[2024-12-11 06:23:28,598 - DEBUG - fouram]: [Base] Create partition scene_test_partition_hybrid_search_BwV46GtI of collection(fouram_IPSnBSas) (base.py:818)
[2024-12-11 06:23:28,659 - DEBUG - fouram]: (api_request)  : [Collection.insert] args: <Collection.insert fields: 18, length: 3000, content: [ [ `type<class 'int'>, dtype<>` 0 ... ], [ `type<class 'list'>, dtype<>` [0.38780827113110494, 0. ... ], [ `type<class 'int'>, dtype<>` 0 ... ], [ `type<class 'int'>, dtype<>` 0 ... ], [ `type<class 'int'>, dtype<>` 0 ... ], [ `type<class 'int'>, dtype<>` 0 ... ], [ `type<class 'float'>, dtype<>` 0.0 ... ], [ `type<class 'numpy.float32'>, dtype<float32>` 0.0 ... ], [ `type<class 'str'>, dtype<>` 0 ... ], [ `type<class 'bool'>, dtype<>` False ... ], [ `type<class 'list'>, dtype<>` [0, 0, 0, 0, 0, 0, 0, 0, ... ], [ `type<class 'list'>, dtype<>` [0, 0, 0, 0, 0, 0, 0, 0, ... ], [ `type<class 'list'>, dtype<>` [0, 0, 0, 0, 0, 0, 0, 0, ... ], [ `type<class 'list'>, dtype<>` [0, 0, 0, 0, 0, 0, 0, 0, ... ], [ `type<class 'list'>, dtype<>` [0.0, 0.0, 0.0, 0.0, 0.0 ... ], [ `type<class 'list'>, dtype<>` [0.0, 0.0, 0.0, 0.0, 0.0 ... ], [ `type<class 'list'>, dtype<>` ['0', '0', '0', '0', '0' ... ], [ `type<class 'list'>, dtype<>` [False, False, False, Fa ... ] ]>, ['scene_test_partition_hybrid_search_BwV46GtI'], kwargs: {'timeout': 600}, [requestId: 6f8b1258-b788-11ef-a841-92fa84381d28] (api_request.py:77)
[2024-12-11 06:23:28,918 - DEBUG - fouram]: [Base] Start flush partition scene_test_partition_hybrid_search_BwV46GtI, kwargs: {'timeout': 600} (base.py:833)
[2024-12-11 06:25:55,210 - DEBUG - fouram]: [Base] Partition scene_test_partition_hybrid_search_BwV46GtI num entities: (3000) (base.py:829)
[2024-12-11 06:25:55,496 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_int16_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:08,511 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_varchar_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:12,006 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_bool_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:12,906 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:int8_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:13,894 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:int16_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:18,907 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:bool_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:22,904 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:id, index_params:{} (base.py:1123)
[2024-12-11 06:26:23,815 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:varchar_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:24,787 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_int32_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:25,709 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_int64_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:26,684 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:float_vector, index_params:{'index_type': 'IVF_SQ8', 'metric_type': 'L2', 'params': {'nlist': 1024}} (base.py:1123)
[2024-12-11 06:26:27,584 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:int32_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:28,506 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_int8_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:29,390 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_double_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:30,361 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:array_float_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:31,309 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:int64_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:32,288 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:double_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:33,211 - DEBUG - fouram]: [Base] Partition:scene_test_partition_hybrid_search_BwV46GtI start building index, field_name:float_1, index_params:{} (base.py:1123)
[2024-12-11 06:26:34,078 - DEBUG - fouram]: [Base] Start load partition scene_test_partition_hybrid_search_BwV46GtI, replica_number:1, kwargs:{'timeout': 600} (base.py:839)
[2024-12-11 06:26:35,137 - DEBUG - fouram]: [Base] Params of partition:scene_test_partition_hybrid_search_BwV46GtI hybrid_search: reqs:[{'anns_field': 'float_vector', 'param': {'metric_type': 'L2', 'params': {'nprobe': 128}}, 'limit': 100, 'expr': None, 'nq': 1}, {'anns_field': 'float_vector', 'param': {'metric_type': 'L2', 'params': {'nprobe': 64}}, 'limit': 10, 'expr': None, 'nq': 1}], rerank:{'strategy': 'rrf', 'params': {'k': 60}}, limit:1, timeout:600, kwargs:{'check_task': 'check_response'} (base.py:868)
[2024-12-11 06:26:35,146 - DEBUG - fouram]: [Base] Start release partition scene_test_partition_hybrid_search_BwV46GtI (base.py:845)
[2024-12-11 06:26:46,187 - DEBUG - fouram]: [Base] Params of partition:scene_test_partition_hybrid_search_BwV46GtI hybrid_search: reqs:[{'anns_field': 'float_vector', 'param': {'metric_type': 'L2', 'params': {'nprobe': 128}}, 'limit': 100, 'expr': None, 'nq': 1}, {'anns_field': 'float_vector', 'param': {'metric_type': 'L2', 'params': {'nprobe': 64}}, 'limit': 10, 'expr': None, 'nq': 1}], rerank:{'strategy': 'rrf', 'params': {'k': 60}}, limit:1, timeout:600, kwargs:{'check_task': 'check_error_response', 'check_items': {'code': 65535, 'message': 'not loaded'}} (base.py:868)
[2024-12-11 06:26:47,006 - DEBUG - fouram]: (api_request)  : [Partition.drop] args: [], kwargs: {'timeout': 600}, [requestId: e5c45d62-b788-11ef-a841-92fa84381d28] (api_request.py:77)
[2024-12-11 06:26:47,079 - ERROR - fouram]: (api_response) : [Partition.drop] <MilvusException: (code=201, message=partition not loaded[partition=454527759048375665])>, [requestId: e5c45d62-b788-11ef-a841-92fa84381d28] (api_request.py:57)

Expected Behavior

No response

Steps To Reproduce

concurrent test and calculation of RT and QPS

        :purpose:  `primary key: INT64`
            1. building default index on all supported 16 scalar fields
            2. load and search partial partitions & DQL requests

        :test steps:
            1. create collection with fields:
                'float_vector': 128dim
                'id': primary key type is INT64

                all scalar fields: varchar max_length=100, array max_capacity=9
            2. build indexes:
                IVF_SQ8: 'float_vector'

                default scalar index: all scalar fields
            3. insert 6 million data
            4. flush collection
            5. build indexes again using the same params
            6. load collection
            7. concurrent request:
                - scene_test_partition
                    (partition: create->insert->flush->index again->load->search->release->search failed->drop)
                - scene_test_partition_hybrid_search
                    (partition: create->insert->flush->index again->load->hybrid_search->release->hybrid_search failed->drop)
                - search
                - query
                - hybrid_search

Milvus Log

No response

Anything else?

test result:

[2024-12-11 06:57:03,536 -  INFO - fouram]: Print locust final stats. (locust_runner.py:56)
[2024-12-11 06:57:03,537 -  INFO - fouram]: Type     Name                                                                          # reqs      # fails |    Avg     Min     Max    Med |   req/s  failures/s (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: --------|----------------------------------------------------------------------------|-------|-------------|-------|-------|-------|-------|--------|----------- (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: grpc     hybrid_search                                                                    626     0(0.00%) |     66      42     935     54 |    0.06        0.00 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: grpc     query                                                                            690     0(0.00%) |     68      40    1556     53 |    0.06        0.00 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: grpc     scene_test_partition                                                             660  203(30.76%) | 126756   16582  255996 115000 |    0.06        0.02 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: grpc     scene_test_partition_hybrid_search                                               672    52(7.74%) | 193691   17353  630006 123000 |    0.06        0.00 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: grpc     search                                                                           647     0(0.00%) |    320     238    1295    310 |    0.06        0.00 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]: --------|----------------------------------------------------------------------------|-------|-------------|-------|-------|-------|-------|--------|----------- (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]:          Aggregated                                                                      3295   255(7.74%) |  64982      40  630006    320 |    0.31        0.02 (stats.py:789)
[2024-12-11 06:57:03,537 -  INFO - fouram]:  (stats.py:790)
[2024-12-11 06:57:03,543 -  INFO - fouram]: [PerfTemplate] Report data: 
{'server': {'deploy_tool': 'helm',
            'deploy_mode': 'cluster',
            'config_name': 'cluster_8c16m',
            'config': {'queryNode': {'resources': {'limits': {'cpu': '16.0', 'memory': '32Gi'}, 'requests': {'cpu': '9.0', 'memory': '17Gi'}}, 'replicas': 1},
                       'indexNode': {'resources': {'limits': {'cpu': '8.0', 'memory': '8Gi'}, 'requests': {'cpu': '5.0', 'memory': '5Gi'}}, 'replicas': 2},
                       'dataNode': {'resources': {'limits': {'cpu': '8.0', 'memory': '16Gi'}, 'requests': {'cpu': '5.0', 'memory': '9Gi'}}},
                       'cluster': {'enabled': True},
                       'pulsarv3': {},
                       'kafka': {},
                       'minio': {'metrics': {'podMonitor': {'enabled': True}}},
                       'etcd': {'metrics': {'enabled': True, 'podMonitor': {'enabled': True}}},
                       'metrics': {'serviceMonitor': {'enabled': True}},
                       'log': {'level': 'debug'},
                       'image': {'all': {'repository': 'harbor.milvus.io/milvus/milvus', 'tag': 'master-20241210-7ea9c983-amd64'}}},
            'host': 'fouramf-bitmap-scenes-tw86w-10-milvus.qa-milvus.svc.cluster.local',
            'port': '19530',
            'uri': ''},
 'client': {'test_case_type': 'ConcurrentClientBase',
            'test_case_name': 'test_bitmap_locust_hybrid_index_cluster',
            'test_case_params': {'dataset_params': {'metric_type': 'L2',
                                                    'dim': 128,
                                                    'max_length': 100,
                                                    'scalars_index': {'id': {},
                                                                      'int8_1': {},
                                                                      'int16_1': {},
                                                                      'int32_1': {},
                                                                      'int64_1': {},
                                                                      'double_1': {},
                                                                      'float_1': {},
                                                                      'varchar_1': {},
                                                                      'bool_1': {},
                                                                      'array_int8_1': {},
                                                                      'array_int16_1': {},
                                                                      'array_int32_1': {},
                                                                      'array_int64_1': {},
                                                                      'array_double_1': {},
                                                                      'array_float_1': {},
                                                                      'array_varchar_1': {},
                                                                      'array_bool_1': {}},
                                                    'scalars_params': {'array_int8_1': {'params': {'max_capacity': 9},
                                                                                        'other_params': {'dataset': 'random_algorithm',
                                                                                                         'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                              'specify_range': [0, 5000],
                                                                                                                              'base_size': 1000,
                                                                                                                              'custom_size': {'101000': [0, 1,
                                                                                                                                                         2, 3,
                                                                                                                                                         4, 5,
                                                                                                                                                         6, 7,
                                                                                                                                                         8,
                                                                                                                                                         9]},
                                                                                                                              'max_capacity': 9}}},
                                                                       'array_int16_1': {'params': {'max_capacity': 9},
                                                                                         'other_params': {'dataset': 'random_algorithm',
                                                                                                          'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                               'specify_range': [0, 5000],
                                                                                                                               'base_size': 1000,
                                                                                                                               'custom_size': {'101000': [0, 1,
                                                                                                                                                          2, 3,
                                                                                                                                                          4, 5,
                                                                                                                                                          6, 7,
                                                                                                                                                          8,
                                                                                                                                                          9]},
                                                                                                                               'max_capacity': 9}}},
                                                                       'array_int32_1': {'params': {'max_capacity': 9},
                                                                                         'other_params': {'dataset': 'random_algorithm',
                                                                                                          'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                               'specify_range': [0, 5000],
                                                                                                                               'base_size': 1000,
                                                                                                                               'custom_size': {'101000': [0, 1,
                                                                                                                                                          2, 3,
                                                                                                                                                          4, 5,
                                                                                                                                                          6, 7,
                                                                                                                                                          8,
                                                                                                                                                          9]},
                                                                                                                               'max_capacity': 9}}},
                                                                       'array_int64_1': {'params': {'max_capacity': 9},
                                                                                         'other_params': {'dataset': 'random_algorithm',
                                                                                                          'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                               'specify_range': [0, 5000],
                                                                                                                               'base_size': 1000,
                                                                                                                               'custom_size': {'101000': [0, 1,
                                                                                                                                                          2, 3,
                                                                                                                                                          4, 5,
                                                                                                                                                          6, 7,
                                                                                                                                                          8,
                                                                                                                                                          9]},
                                                                                                                               'max_capacity': 9}}},
                                                                       'array_double_1': {'params': {'max_capacity': 9},
                                                                                          'other_params': {'dataset': 'random_algorithm',
                                                                                                           'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                                'specify_range': [0, 5000],
                                                                                                                                'base_size': 1000,
                                                                                                                                'custom_size': {'101000': [0, 1,
                                                                                                                                                           2, 3,
                                                                                                                                                           4, 5,
                                                                                                                                                           6, 7,
                                                                                                                                                           8,
                                                                                                                                                           9]},
                                                                                                                                'max_capacity': 9}}},
                                                                       'array_float_1': {'params': {'max_capacity': 9},
                                                                                         'other_params': {'dataset': 'random_algorithm',
                                                                                                          'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                               'specify_range': [0, 5000],
                                                                                                                               'base_size': 1000,
                                                                                                                               'custom_size': {'101000': [0, 1,
                                                                                                                                                          2, 3,
                                                                                                                                                          4, 5,
                                                                                                                                                          6, 7,
                                                                                                                                                          8,
                                                                                                                                                          9]},
                                                                                                                               'max_capacity': 9}}},
                                                                       'array_varchar_1': {'params': {'max_capacity': 9},
                                                                                           'other_params': {'dataset': 'random_algorithm',
                                                                                                            'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                                 'specify_range': [0, 5000],
                                                                                                                                 'base_size': 1000,
                                                                                                                                 'custom_size': {'101000': [0,
                                                                                                                                                            1,
                                                                                                                                                            2,
                                                                                                                                                            3,
                                                                                                                                                            4,
                                                                                                                                                            5,
                                                                                                                                                            6,
                                                                                                                                                            7,
                                                                                                                                                            8,
                                                                                                                                                            9]},
                                                                                                                                 'max_capacity': 9}}},
                                                                       'array_bool_1': {'params': {'max_capacity': 9},
                                                                                        'other_params': {'dataset': 'random_algorithm',
                                                                                                         'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                              'specify_range': [0, 5000],
                                                                                                                              'base_size': 1000,
                                                                                                                              'custom_size': {'101000': [0, 1,
                                                                                                                                                         2, 3,
                                                                                                                                                         4, 5,
                                                                                                                                                         6, 7,
                                                                                                                                                         8,
                                                                                                                                                         9]},
                                                                                                                              'max_capacity': 9}}},
                                                                       'int8_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                   'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                        'specify_range': [0, 5000],
                                                                                                                        'base_size': 1000,
                                                                                                                        'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                   4, 5, 6, 7,
                                                                                                                                                   8, 9]},
                                                                                                                        'max_capacity': 9}}},
                                                                       'int16_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                    'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                         'specify_range': [0, 5000],
                                                                                                                         'base_size': 1000,
                                                                                                                         'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                    4, 5, 6, 7,
                                                                                                                                                    8, 9]},
                                                                                                                         'max_capacity': 9}}},
                                                                       'int32_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                    'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                         'specify_range': [0, 5000],
                                                                                                                         'base_size': 1000,
                                                                                                                         'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                    4, 5, 6, 7,
                                                                                                                                                    8, 9]},
                                                                                                                         'max_capacity': 9}}},
                                                                       'int64_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                    'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                         'specify_range': [0, 5000],
                                                                                                                         'base_size': 1000,
                                                                                                                         'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                    4, 5, 6, 7,
                                                                                                                                                    8, 9]},
                                                                                                                         'max_capacity': 9}}},
                                                                       'double_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                     'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                          'specify_range': [0, 5000],
                                                                                                                          'base_size': 1000,
                                                                                                                          'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                     4, 5, 6, 7,
                                                                                                                                                     8, 9]},
                                                                                                                          'max_capacity': 9}}},
                                                                       'float_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                    'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                         'specify_range': [0, 5000],
                                                                                                                         'base_size': 1000,
                                                                                                                         'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                    4, 5, 6, 7,
                                                                                                                                                    8, 9]},
                                                                                                                         'max_capacity': 9}}},
                                                                       'varchar_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                      'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                           'specify_range': [0, 5000],
                                                                                                                           'base_size': 1000,
                                                                                                                           'custom_size': {'101000': [0, 1, 2,
                                                                                                                                                      3, 4, 5,
                                                                                                                                                      6, 7, 8,
                                                                                                                                                      9]},
                                                                                                                           'max_capacity': 9}}},
                                                                       'bool_1': {'other_params': {'dataset': 'random_algorithm',
                                                                                                   'algorithm_params': {'algorithm_name': 'specify_scope_custom_size',
                                                                                                                        'specify_range': [0, 5000],
                                                                                                                        'base_size': 1000,
                                                                                                                        'custom_size': {'101000': [0, 1, 2, 3,
                                                                                                                                                   4, 5, 6, 7,
                                                                                                                                                   8, 9]},
                                                                                                                        'max_capacity': 9}}}},
                                                    'dataset_name': 'sift',
                                                    'dataset_size': 6000000,
                                                    'ni_per': 5000},
                                 'collection_params': {'other_fields': ['int8_1', 'int16_1', 'int32_1', 'int64_1', 'double_1', 'float_1', 'varchar_1', 'bool_1',
                                                                        'array_int8_1', 'array_int16_1', 'array_int32_1', 'array_int64_1', 'array_double_1',
                                                                        'array_float_1', 'array_varchar_1', 'array_bool_1'],
                                                       'shards_num': 3},
                                 'resource_groups_params': {'reset': False},
                                 'database_user_params': {'reset_rbac': False, 'reset_db': False},
                                 'index_params': {'index_type': 'IVF_SQ8', 'index_param': {'nlist': 1024}},
                                 'concurrent_params': {'concurrent_number': 20, 'during_time': '3h', 'interval': 20, 'spawn_rate': None},
                                 'concurrent_tasks': [{'type': 'scene_test_partition',
                                                       'weight': 1,
                                                       'params': {'data_size': 3000,
                                                                  'ni': 3000,
                                                                  'nq': 1,
                                                                  'search_param': {'nprobe': 64},
                                                                  'limit': 1,
                                                                  'expr': None,
                                                                  'output_fields': ['*'],
                                                                  'guarantee_timestamp': None,
                                                                  'timeout': 600,
                                                                  'search_counts': 1}},
                                                      {'type': 'scene_test_partition_hybrid_search',
                                                       'weight': 1,
                                                       'params': {'nq': 1,
                                                                  'top_k': 1,
                                                                  'reqs': [{'search_param': {'nprobe': 128}, 'anns_field': 'float_vector', 'top_k': 100},
                                                                           {'search_param': {'nprobe': 64}, 'anns_field': 'float_vector', 'top_k': 10}],
                                                                  'rerank': {'RRFRanker': []},
                                                                  'output_fields': ['*'],
                                                                  'ignore_growing': False,
                                                                  'guarantee_timestamp': None,
                                                                  'timeout': 600,
                                                                  'random_data': True,
                                                                  'hybrid_search_counts': 1,
                                                                  'data_size': 3000,
                                                                  'ni': 3000}},
                                                      {'type': 'search',
                                                       'weight': 1,
                                                       'params': {'nq': 1000,
                                                                  'top_k': 10,
                                                                  'search_param': {'nprobe': 16},
                                                                  'expr': 'int8_1 == 100',
                                                                  'guarantee_timestamp': None,
                                                                  'partition_names': ['_default'],
                                                                  'output_fields': ['id', 'float_vector', 'int64_1'],
                                                                  'ignore_growing': False,
                                                                  'group_by_field': None,
                                                                  'timeout': 600,
                                                                  'random_data': True,
                                                                  'check_task': 'check_search_output',
                                                                  'check_items': {'nq': 1000}}},
                                                      {'type': 'query',
                                                       'weight': 1,
                                                       'params': {'ids': None,
                                                                  'expr': 'int64_1 > -1',
                                                                  'output_fields': ['*'],
                                                                  'offset': None,
                                                                  'limit': 10,
                                                                  'ignore_growing': False,
                                                                  'partition_names': ['_default'],
                                                                  'timeout': 600,
                                                                  'consistency_level': None,
                                                                  'random_data': False,
                                                                  'random_count': 0,
                                                                  'random_range': [0, 1],
                                                                  'field_name': 'id',
                                                                  'field_type': 'int64',
                                                                  'custom_expr': None,
                                                                  'custom_range': [0, 1],
                                                                  'check_task': 'check_query_output',
                                                                  'check_items': {'expect_length': 10}}},
                                                      {'type': 'hybrid_search',
                                                       'weight': 1,
                                                       'params': {'nq': 10,
                                                                  'top_k': 10,
                                                                  'reqs': [{'search_param': {'nprobe': 128},
                                                                            'anns_field': 'float_vector',
                                                                            'expr': '(array_contains_any(array_int32_1, [0]) || array_contains(array_int64_1, '
                                                                                    '1)) || ((varchar_1 like "1%") and (bool_1 == True))',
                                                                            'top_k': 100},
                                                                           {'search_param': {'nprobe': 64},
                                                                            'anns_field': 'float_vector',
                                                                            'expr': 'not (int16_1 == int8_1) && ARRAY_CONTAINS_ANY(array_int64_1, [-1, 0, '
                                                                                    '1])'}],
                                                                  'rerank': {'RRFRanker': []},
                                                                  'output_fields': ['*'],
                                                                  'ignore_growing': False,
                                                                  'guarantee_timestamp': None,
                                                                  'partition_names': ['_default'],
                                                                  'timeout': 600,
                                                                  'random_data': True,
                                                                  'check_task': 'check_search_output',
                                                                  'check_items': {'output_fields': ['int8_1', 'int16_1', 'int32_1', 'int64_1', 'double_1',
                                                                                                    'float_1', 'varchar_1', 'bool_1', 'array_int8_1',
                                                                                                    'array_int16_1', 'array_int32_1', 'array_int64_1',
                                                                                                    'array_double_1', 'array_float_1', 'array_varchar_1',
                                                                                                    'array_bool_1', 'id', 'float_vector'],
                                                                                  'nq': 10}}}]},
            'run_id': 2024121157633205,
            'datetime': '2024-12-11 02:56:03.527318',
            'client_version': '2.5.0'},
 'result': {'test_result': {'index': {'RT': 1799.7289,
                                      'id': {'RT': 620.9656},
                                      'int8_1': {'RT': 231.2137},
                                      'int16_1': {'RT': 147.714},
                                      'int32_1': {'RT': 0.5692},
                                      'int64_1': {'RT': 0.5216},
                                      'double_1': {'RT': 0.5398},
                                      'float_1': {'RT': 0.5545},
                                      'varchar_1': {'RT': 0.5215},
                                      'bool_1': {'RT': 0.5812},
                                      'array_int8_1': {'RT': 0.5213},
                                      'array_int16_1': {'RT': 0.5692},
                                      'array_int32_1': {'RT': 0.52},
                                      'array_int64_1': {'RT': 0.5736},
                                      'array_double_1': {'RT': 0.5271},
                                      'array_float_1': {'RT': 0.5763},
                                      'array_varchar_1': {'RT': 0.5251},
                                      'array_bool_1': {'RT': 0.5792}},
                            'insert': {'total_time': 432.5579, 'VPS': 13870.9754, 'batch_time': 0.3605, 'batch': 5000},
                            'flush': {'RT': 3.0548},
                            'load': {'RT': 33.9876},
                            'Locust': {'Aggregated': {'Requests': 3295,
                                                      'Fails': 255,
                                                      'RPS': 0.31,
                                                      'fail_s': 0.08,
                                                      'RT_max': 630006.64,
                                                      'RT_avg': 64982.25,
                                                      'TP50': 320.0,
                                                      'TP99': 603000.0},
                                       'hybrid_search': {'Requests': 626,
                                                         'Fails': 0,
                                                         'RPS': 0.06,
                                                         'fail_s': 0.0,
                                                         'RT_max': 935.81,
                                                         'RT_avg': 66.79,
                                                         'TP50': 54,
                                                         'TP99': 290.0},
                                       'query': {'Requests': 690,
                                                 'Fails': 0,
                                                 'RPS': 0.06,
                                                 'fail_s': 0.0,
                                                 'RT_max': 1556.51,
                                                 'RT_avg': 68.35,
                                                 'TP50': 53,
                                                 'TP99': 400.0},
                                       'scene_test_partition': {'Requests': 660,
                                                                'Fails': 203,
                                                                'RPS': 0.06,
                                                                'fail_s': 0.31,
                                                                'RT_max': 255997.0,
                                                                'RT_avg': 126756.64,
                                                                'TP50': 117000.0,
                                                                'TP99': 233000.0},
                                       'scene_test_partition_hybrid_search': {'Requests': 672,
                                                                              'Fails': 52,
                                                                              'RPS': 0.06,
                                                                              'fail_s': 0.08,
                                                                              'RT_max': 630006.64,
                                                                              'RT_avg': 193691.3,
                                                                              'TP50': 124000.0,
                                                                              'TP99': 613000.0},
                                       'search': {'Requests': 647,
                                                  'Fails': 0,
                                                  'RPS': 0.06,
                                                  'fail_s': 0.0,
                                                  'RT_max': 1295.97,
                                                  'RT_avg': 320.88,
                                                  'TP50': 310.0,
                                                  'TP99': 840.0}}}}}
@wangting0128 wangting0128 added kind/bug Issues or changes related a bug needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. test/benchmark benchmark test labels Dec 11, 2024
@wangting0128 wangting0128 added this to the 2.5.0 milestone Dec 11, 2024
@wangting0128 wangting0128 changed the title [Bug]: [benchmark][cluster] Drop partition raises another partition not found in concurrent DQL & multi-partition scene [Bug]: [benchmark][cluster] Show partition failed when drop partition in concurrent DQL & multi-partition scene Dec 11, 2024
@yanliang567 yanliang567 added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Dec 11, 2024
@yanliang567 yanliang567 removed their assignment Dec 11, 2024
congqixia added a commit to congqixia/milvus that referenced this issue Dec 11, 2024
Related to milvus-io#38372

This PR make drop partition only check target partition load states only
in case of concurrent releasing other partition in same collection.

Signed-off-by: Congqi Xia <[email protected]>
@congqixia
Copy link
Contributor

congqixia commented Dec 11, 2024

The problem here was concurrent releasing & drop partition on same collection:

[2024/12/11 06:26:47.076 +00:00] [WARN] [querycoordv2/services.go:171] ["show partitions failed"] [traceID=efbd5b23076d27d6f774ce63685f1d99] [collectionID=454527759013904671] [error="partition not loaded[partition=454527759048375665]"]
[2024/12/11 06:26:47.043 +00:00] [INFO] [querycoordv2/services.go:428] ["release partitions"] [traceID=caf67e76c09a4aaad26f60608273f94d] [collectionID=454527759013904671] [partitions="[454527759048375665]"]

Drop Partition task tried to check partition loaded state while concurrent release partition make querycoord show partition return error

sre-ci-robot pushed a commit that referenced this issue Dec 11, 2024
…38375)

Related to #38372

This PR make drop partition only check target partition load states only
in case of concurrent releasing other partition in same collection.

---------

Signed-off-by: Congqi Xia <[email protected]>
congqixia added a commit to congqixia/milvus that referenced this issue Dec 12, 2024
…ilvus-io#38375)

Related to milvus-io#38372

This PR make drop partition only check target partition load states only
in case of concurrent releasing other partition in same collection.

---------

Signed-off-by: Congqi Xia <[email protected]>
@wangting0128
Copy link
Contributor Author

wangting0128 commented Dec 12, 2024

This is a rare problem, I'll observe the test results for a few days

@wangting0128
Copy link
Contributor Author

not reproduce

argo task:bitmap-corn-1733972400
image:master-20241211-304cdc77-amd64

sre-ci-robot pushed a commit that referenced this issue Dec 12, 2024
…tion (#38375) (#38394)

Cherry pick from master
pr: #38375
Related to #38372

This PR make drop partition only check target partition load states only
in case of concurrent releasing other partition in same collection.

---------

Signed-off-by: Congqi Xia <[email protected]>
@wangting0128
Copy link
Contributor Author

After testing more than 20 times, this problem did not recur, close it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Issues or changes related a bug test/benchmark benchmark test triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
None yet
Development

No branches or pull requests

3 participants