docstr: target: test delete and then compact
  method: 1. create a collection and insert data
          2. delete all data and compact
          3. load query and release
  expected: can't find the deleted data
docstr_tok: ["target",":","test","delete","and","then","compact","method",":","1.","create","a","collection","and","insert","data","2.","delete","all","data","and","compact","3.","load","query","and","release","expected",":","ca","n't","find","the","deleted","data"]
code: def test_compact_after_delete(self):
      """
      target: test delete and then compact
      method: 1. create a collection and insert data
              2. delete all data and compact
              3. load query and release
      expected: can't find the deleted data
      """
      nb = 50000
      collection_w = self.init_collection_wrap(
          name=cf.gen_unique_str(prefix)
      )
      df = cf.gen_default_dataframe_data(nb=nb)
      res, _ = collection_w.insert(df)
      assert collection_w.num_entities == nb
  
      expr = f"{ct.default_int64_field_name} in {res.primary_keys}"
      collection_w.create_index(
          ct.default_float_vec_field_name,
          index_params=ct.default_flat_index,
      )
      collection_w.delete(expr)
      assert collection_w.num_entities == nb
      collection_w.compact()
      collection_w.wait_for_compaction_completed()
      # collection_w.get_compaction_plans(check_task=CheckTasks.check_delete_compact)
  
      collection_w.load()
      res = collection_w.query(expr)[0]
      assert len(res) == 0
      collection_w.release()
  
      sleep(30)
      collection_w.load()
      res = collection_w.query(expr)[0]
      assert len(res) == 0
      collection_w.release()
  
      sleep(40)
      collection_w.load()
      res = collection_w.query(expr)[0]
      assert len(res) == 0
      collection_w.release()
  
      sleep(60)
      collection_w.load()
      res = collection_w.query(expr)[0]
      assert len(res) == 0
      collection_w.release()
  
imports: import threading
  from time import time, sleep
  import pytest
  from pymilvus.grpc_gen.common_pb2 import SegmentState
  from pymilvus.exceptions import MilvusException
  from base.client_base import TestcaseBase
  from common import common_func
  from common import common_type
  from common.common_type import CaseLabel, CheckTasks
  from utils.util_log import test_log
label_desc: Use image node_id 11 for calling the TestCompactionParams obj's underlying member method code with example usage: obj.test_compact_after_delete() without return types