SparkSession.builder.getOrCreate на самом деле будет делать то, что говорит, и получит существующий сеанс спарка. Тем не менее, вы правы, что, если нет существующего сеанса, тогда будет создан ванильный сеанс.
Лучшее место для запуска init_spark_session - ваша функция run_package, в вашем контексте run.py, сразу после контекст загружен. Этот run.py вызывается, когда вызывается ваша команда kedro run.
Если вы хотите sh протестировать только свой каталог, то простой способ - убедиться в том, что в вашем тестовом коде или что если вы вызываете init_spark_session вручную перед выполнением кода соединения JDB C.
Это можно сделать с помощью следующего:
from kedro.context import load_context
kedro_project_path = “./“
context = load_context(kedro_project_path)
context.init_spark_session()
Где уместно kedro_project_path.
Извините за форматирование, кстати, я на мобильном.