5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

Athenaが突然使えなくなりました。
解決にそれなりの労力を要したので供養も兼ねて記事にします。

エラー発生

普段、DynamoDB のデータを Athena を通じてデータ取得する業務を行っているのですが、ある日で突然 Athena がエラーを吐くようになりました。
簡単なクエリにすら応えてくれません。

SELECT * FROM connector.default."xxx"
GENERIC_USER_ERROR: Encountered an exception[java.lang.NullPointerException] from your LambdaFunction[arn:aws:lambda:ap-northeast-XXXXX:function:demo] executed in context[S3SpillLocation{bucket='testathenadynamodbconnector', key='athena-spill/XXXXX', directory=true}] with message[java.lang.NullPointerException]

原因と解決

原因

同環境で動いているほぼ同じ DB と比べてみると、Boolean 型のテーブルに null が含まれていたことが発覚しました。
AppSyncからDynamoDBのBoolean列にNullが登録できてしまい、そのレコードをDynamoDBでは表示できたが、Athenaでは読み込む際に失敗していたことに起因していました。

解決

Athena が参照していたテーブルから該当の Null を削除したら、いつも通り Athena は答えてくれるようになりました。

参考記事

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?