問題タブ [postgresql-12]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
44 参照

sql - PostgreSQL: ストアド関数を実行する (引数がキャストされているにもかかわらずエラーが発生する)

解決策が見つからない問題に遭遇しました。

関数の作成に成功しました。関数名と引数は次のとおりです。

また、関数を実行する権限をロールに付与することに成功しました。AND もコメントを作成しました:

ただし、クエリを実行してテスト ユーザーを作成しようとすると、次のようになります。

エラーが発生します:

エラー: 関数 app_private.create_user(citext, text, boolean, text, text, text, character Various, smallint, text) が存在しません
LINE 1: SELECT "app_private.create_user"('SY0'::citext, 'test@gmail ....

クエリとキャストを変更しようとしましたが、失敗しました。ほぼ髪を引っ張ります。

よろしくお願いします。

0 投票する
0 に答える
87 参照

linux - postgreSQL での集計関数の実行に時間がかかりすぎる

最近、Linux サーバーに PostgreSQL データベースをデプロイしました。
ストアド プロシージャの 1 つに約 20 から 24 秒かかります。空のデータベースでも同じストアド プロシージャを実行しましたが (行が返されません)、同じ時間がかかっています。集計関数が原因で遅延が発生することがわかりました。
ここで関数ARRAY_TO_JSON(ARRAY_AGG(を削除すると、結果は1秒以内にフェッチされます。

以下は私のコードスニペットです:


実行計画の説明:

ここに画像の説明を入力

以前、私は PostgreSQL データベースを Windows サーバーにデプロイしましたが、同じストアド プロシージャにかかる時間はわずか 1 ~ 1.5 秒でした。どちらの場合も、同じ量のデータを持つ同じデータベースでテストしました。また、両方のサーバーはRAM、プロセッサなどの同じ構成を持っています。また、同じPostgreSQL構成もあります。Linux サーバーでストアド プロシージャを実行すると、CPU 使用率が 100% になります。
同じ解決策があれば教えてください。

0 投票する
1 に答える
133 参照

postgresql - Windows と Linux for PostgreSQL で実行計画が異なる

最近、Linux サーバーに PostgreSQL データベースをデプロイしました。ストアド プロシージャの 1 つは、結果をフェッチするのに約 3 ~ 4 秒かかります。以前は、PostgreSQL データベースを Windows サーバーにデプロイし、同じストアド プロシージャで 1 秒以内に結果をフェッチしていました。どちらの場合も実行計画を確認しました。
ほぼ同じですが、Linux の実行計画には以下の詳細が含まれています。

上記の詳細について何か考えがあり、速度低下の問題の根本的な原因がある場合はお知らせください。