code: def _fill_object_store_and_get(
      obj, succeed=True, object_MiB=20, num_objects=5
  ):
      for _ in range(num_objects):
          ray.put(np.zeros(object_MiB * 1024 * 1024, dtype=np.uint8))
  
      if type(obj) is bytes:
          obj = ray.ObjectRef(obj)
  
      if succeed:
          wait_for_condition(
              lambda: ray._private.worker.global_worker.core_worker.object_exists(
                  obj
              )
          )
      else:
          wait_for_condition(
              lambda: not ray._private.worker.global_worker.core_worker.object_exists(
                  obj
              )
          )
  
imports: import logging
  import os
  import copy
  import platform
  import random
  import signal
  import sys
  import time
  import numpy
  import pytest
  import ray
  import ray.cluster_utils
  from ray._private.internal_api import memory_summary
  from ray._private.test_utils import SignalActor, put_object, wait_for_condition, wait_for_num_actors
  import ray._private.gcs_utils
label_desc: Use image node_id 2 for calling a global function with example usage: _fill_object_store_and_get(obj, succeed, object_MiB, num_objects) without return types