лучевой питон с подпиской на публикацию/подписку: ошибка с DirectRunner, но не с DataflowRunner
У меня есть очень простой скрипт BEAM Python, который работает как шарм при запуске в DataflowRunner. Он берет данные из подписки Pub/Sub и распечатывает их... И все, и все работает. Но когда я запускаю его в DirectRunner, я получаю эту ошибку:
ОШИБКА:apache_beam.runners.direct.executor:Исключение в пакете из-за исключения. Traceback (последний вызов — последний) [...] Файл ".../.local/lib/python3.9/site-packages/apache_beam/utils/timestamp.py", строка 106, в from_utc_datetime если dt.tzinfo != pytz.utc и dt.tzinfo != datetime.timezone.utc: Ошибка атрибута: tzinfo
Если я заменю код подписки Pub/Sub на шаг Beam.Create([...]), это сработает.
# Чтение из PubSub строки = (конвейер | «Читать из PubSub» >> луч.io.ReadFromPubSub(подписка=known_args.input_subscription) #| 'Простая PCollection' >> луч.Создать([0,2,5]) | 'распечатать' >> луч.Карта(печать) )