def METHOD_NAME(self, image, timeout=120, **kw):
    """Validate cache file existence.
    Args:
        image: name of the image.
        timeout: timeout in seconds
        kw: validate arguments
    Raises:
        PWLException
    """
    log.info("Validate RBD PWL cache file existence and size.")
    # Validate cache file
    end_time = datetime.datetime.now() + datetime.timedelta(seconds=timeout)
    while end_time > datetime.datetime.now():
        out = self.get_image_cache_status(image)
        log.debug(f"RBD status of image: {out}")
        cache_file_path = out.get("persistent_cache", {}).get("path")
        if cache_file_path:
            # validate cache from rbd status
            if kw.get("validate_cache_size"):
                self.validate_cache_size(out, kw["cache_file_size"])
            if kw.get("validate_cache_path"):
                self.validate_cache_path(out)
            try:
                # validate cache file existence
                self.client.exec_command(
                    cmd=f"ls -l {cache_file_path}",
                    check_ec=True,
                )
                log.info(
                    f"{self.client.hostname}:{cache_file_path} cache file found..."
                )
                break
            except Exception as err:
                log.warning(err)
    else:
        raise PWLException(
            f"{self.client.hostname}:{self.pwl_path} cache file did not found!!!"
        )