私はマテリアライズド・ビューを使用するPostgreSQL DBを持っています。 これらのマテリアライズド・ビューをリフレッシュしようとすると問題が発生します。同時実行性を備えたマテリアライズド・ビューをリフレッシュ
REFRESH MATERIALIZED VIEW product_cat_mview;
REFRESH MATERIALIZED VIEW productsforproject;
私のソリューションは、ユーザーが更新されたデータを見たいと思ったときに、彼はウェブページ上の「更新ボタン」をクリックするべきであるが、これはローカル接続で1950(およびアプリケーションから約2分ほどかかりますサーバー)、このすべての時間はユーザーが待たなければならない、それは良くありません。
これらのマテリアライズド・ビューを10分ごとに自動的にリフレッシュするソリューションを作成する必要があります。 私はマルチスレッドでJavaソリューションを作成しました。しかし、私には1つの問題があります。
最初のクエリ
REFRESH MATERIALIZED VIEW CONCURRENTLY product_cat_mview;
作品正しいが、2番目の
REFRESH MATERIALIZED VIEW CONCURRENTLY productsforproject;
は、私は一意のインデックスを作成する必要があると文句を言います。私はGoogleで見つけたインデックス、ユニークなインデックスなどを作成しようとしましたが、 "ユニークインデックスを作成する"というメッセージが表示されます。
リフレッシュを1つずつ実行するとこのエラーが発生しますか? –
私は30秒の遅れでそれらを1つずつ実行します。 –