Проверка журналов Stackdriver из моего конвейера Apache Beam, написанного на Python, обнаружил, что каждые 5 минут происходит ошибка. Лог выглядит примерно так:
Error processing instruction -22858582. Original traceback is Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/apache_beam/runners/worker/sdk_worker.py", line 127, in _execute response = task()
File "/usr/local/lib/python2.7/dist-packages/apache_beam/runners/worker/sdk_worker.py", line 182, in <lambda> instruction_reference
KeyError: u'-22857839'
Из того, что я понимаю, идентификаторы в KeyError, а также идентификаторы, используемые для обозначения «инструкций», являются теми задачами, которые передаются по различным потокам. Я предполагаю это, потому что формат заставляет меня думать об этом информационном журнале, который также появляется постоянно:
Got work -23571012
Это правильно? И если так, то плохо ли, что некоторые из моих инструкций «теряются»? Как я могу расследовать дальше? По крайней мере, кажется, что он не блокирует мой конвейер, так как мои строки BigQuery все еще пишутся.