code: def test_meta_schedule_rpc_runner_exception():
      """Test meta schedule RPC Runner exception"""
  
      def initializer():
          @register_func("meta_schedule.runner.test_exception")
          def exception_session_creator(  # pylint: disable=unused-variable
              rpc_config: RPCConfig,  # pylint: disable=unused-argument
          ) -> RPCSession:
              raise Exception("Test")
  
      runner_input = RunnerInput(
          "test",
          "llvm",
          [
              TensorInfo("float32", (MATMUL_N, MATMUL_N)),
              TensorInfo("float32", (MATMUL_N, MATMUL_N)),
              TensorInfo("float32", (MATMUL_N, MATMUL_N)),
          ],
      )
  
      with LocalRPC() as rpc:
          rpc_config = RPCConfig(
              tracker_host=rpc.tracker_host,
              tracker_port=rpc.tracker_port,
              tracker_key=rpc.tracker_key,
              session_priority=1,
              session_timeout_sec=100,
          )
          evaluator_config = EvaluatorConfig(
              number=1,
              repeat=1,
              min_repeat_ms=0,
              enable_cpu_cache_flush=False,
          )
          runner = RPCRunner(
              rpc_config,
              evaluator_config,
              initializer=initializer,
              f_create_session="meta_schedule.runner.test_exception",
          )
          (runner_future,) = runner.run([runner_input])
          runner_result = runner_future.result()
  
      assert (
          runner_result.error_msg is not None
          and runner_result.error_msg.startswith(
              "RPCRunner: An exception occurred\n"
          )
      )
      assert runner_result.run_secs is None
  
imports: import itertools
  import sys
  import time
  from typing import Any, List
  import numpy
  import pytest
  import tvm
  import tvm.testing
  from tvm._ffi import register_func
  from tvm.meta_schedule.arg_info import TensorInfo
  from tvm.meta_schedule.builder import BuilderInput, LocalBuilder
  from tvm.meta_schedule.runner import EvaluatorConfig, LocalRunner, PyRunner, RPCConfig, RPCRunner, RunnerFuture, RunnerInput
  from tvm.meta_schedule.runner.local_runner import default_alloc_argument
  from tvm.meta_schedule.runner.rpc_runner import T_ARG_INFO_JSON_OBJ_LIST, T_ARGUMENT_LIST
  from tvm.meta_schedule.runner.rpc_runner import default_alloc_argument
  from tvm.meta_schedule.testing.local_rpc import LocalRPC
  from tvm.meta_schedule.utils import derived_object, get_global_func_with_default_on_worker
  from tvm.rpc import RPCSession
  from tvm.runtime import Device, Module
  from tvm.script import tir
  from tvm.target import Target
  from tvm.tir import FloatImm
label_desc: Use image node_id 9 for calling a global function with example usage: test_meta_schedule_rpc_runner_exception() without return types