SpringWebFlux

Spring WebFlux/R2DBC/jOOQ/PostgreSQL/Kotlin Coroutines環境でselectクエリがハングする時の個人的対処法3選

Spring WebFlux/R2DBC/jOOQ/PostgreSQL/Kotlin Coroutines環境で、不意にselectクエリがハングする状況が何度か有りました。 関連する内容が多すぎて原因は解析し切れていませんが、そのような状況に対して見出した3つの対処法をまとめます。 何かより良い対…

【Spring WebFlux】jOOQで組み立てたクエリをConnectionFactoryへ直に発行する【R2DBC】

jOOQで組み立てたクエリをConnectionFactoryへ直発行する仕組みを作ったのでまとめます。 なお、これは事情が有って作ったものであり、本来一切推奨できないコードであることはご承知おき下さい。 コード全体は以下の通りです。 基本的にはSelectクエリでの…

【Spring WebFlux】Bean初期化処理でblockすると、lazy-initが有効な場合に実行時エラーになる

以下の追記部で紹介した話です。 qiita.com 本文 lazy-initが無効な場合、Bean初期化処理中であればblockしても特に問題は起きません。 このため、Bean初期化時のwarmup目的でblockすることもできます。 一方、lazy-initが有効な場合、アクセス時のコンテキ…

【Spring WebFlux】Cannot determine database's type as ConnectionFactory is not options-capable.への対処【R2DBC】

H2データベースを使ってR2DBCのpostAllocate/preReleaseの挙動を確認するためのSpring WebFluxプロジェクトを作成していた所、Cannot determine database's type as ConnectionFactory is not options-capable. To be options-capable, a ConnectionFactory …