Googleのデータフローコードを書き込んで、カラムがDateTime型のbigquery テーブルに値を挿入しました。 ほとんどの場合、ロジックは正常に動作していました。 突然、無効なDateTimeの問題が発生します。DataflowからDatetime値をBigQueryに挿入しようとしたときにDateTimeのエラーが発生しました
Exception: java.lang.RuntimeException: java.io.IOException: Insert failed: [{"errors":[{"debugInfo":"generic::out_of_range: Invalid datetime string \"2017-09-26T21:16\"
上記の値が無効である理由と理由が不明です。 DateTimeのデータ型がhttps://cloud.google.com/bigquery/docs/reference/standard-sql/data-types
に準拠していることが確認されています。このエラーが発生するのはなぜか分かりません。
は、我々はProcessElementコードは、それがうまく働いたが、夜の時間中に時折失敗しました。このpublic void processElement(ProcessContext c) throws Exception {
TableRow tableRow = c.element();
try {
// do some processing then
tableRow.set("PredictedDate",**LocalDateTime.now().toString()**);
c.output(tableRow);
}catch(Exception exc){
LOG.error("Exception while processing and hence not attempting to write to bigquery");
}
}
enter code here
(米国中部タイムゾーン)のようになりDoFn を拡張するカスタム変換コードを書きました。 根本的な原因を見つけるお手伝いをしていただけますか?
「2017-09-26T21:16」の代わりに、「2017-09-26T21:16:00」にする必要があります。 –