С тех пор, как несколько дней назад я больше не могу отправлять свои задания по обработке данных, они не работают с ошибкой ниже.Ошибка отправки задания потока облачных данных
Я попытался отправить простую работу WordCount, и это удалось. Даже с очень упрощенной версией моей собственной работы все в порядке. Но когда я добавляю больше кода (добавляя преобразование GroupByKey), я больше не могу его отправлять.
Кто-нибудь знает, что означает эта ошибка?
Спасибо, G
Exception in thread "main" java.lang.RuntimeException: Failed to create a workflow job: Invalid JSON payload received. Unknown token. { 8r W ^ at com.google.cloud.dataflow.sdk.runners.DataflowPipelineRunner.run(DataflowPipelineRunner.java:219) at com.google.cloud.dataflow.sdk.runners.BlockingDataflowPipelineRunner.run(BlockingDataflowPipelineRunner.java:96) at com.google.cloud.dataflow.sdk.runners.BlockingDataflowPipelineRunner.run(BlockingDataflowPipelineRunner.java:47) at com.google.cloud.dataflow.sdk.Pipeline.run(Pipeline.java:145) at snippet.WordCount.main(WordCount.java:165) Caused by: com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request { "code" : 400, "errors" : [ { "domain" : "global", "message" : "Invalid JSON payload received. Unknown token.\n\u001F \b\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \t{ 8r\u0000 W\n^", "reason" : "badRequest" } ], "message" : "Invalid JSON payload received. Unknown token.\n\u001F \b\u0000\u0000\u0000\u0000\u0000\u0000\u0000 \t{ 8r\u0000 W\n^", "status" : "INVALID_ARGUMENT" }
Спасибо Lukasz, что я обнаружил при проверке вывода json, что он был довольно большой (около 1 МБ).Я мог бы уменьшить размер, лениво инициализируя некоторые члены класса «SerializableFunction», когда они сначала используются вместо того, чтобы делать это конструктором функции. Когда несжатый размер составлял около 100 тыс., Я смог отправить задание. –
Хорошо знать, что вы нашли проблему и смогли найти решение. Мы продолжим дальнейший анализ того, что происходит, когда вы пытаетесь сериализовать большую DoFn/SerializableFunction. –