問題タブ [pcfdev]
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.
java - クラウド アプリケーションからの Oracle データベース エラーのトラブルシューティング
ORA-01000: 最大オープン カーソルの超過または DB 接続を作成できませんなど、さまざまなデータベース エラーとして表示される問題のトラブルシューティングを試みています。PLSQL を確認して、カーソルが開いたままになっていて、エラーがあってもすべて閉じているかどうかを確認しました。
Java アプリケーションと背景は次のとおりです。 元のアプリケーションは 3 層システムでした。
GUI アプリ。-> サーバーアプリ -> 11g Oracle データベース
機能強化は、Pivotal Cloud Foundry (PCF) 環境に API サービスを追加することでした。したがって、このアーキテクチャは次のようになりました。
関数を閉じる: GUI アプリ -> サーバー アプリ -> API サービス -> データベース。
他のすべての機能: GUI アプリ -> サーバー アプリ -> データベース。
これは本番環境に置かれ、上記のデータベースの問題なしで 1 週間実行されました。次に、API サービスが他のいくつかのサービスとすべて PCF で通信する別の拡張機能が追加されました。2 つのサービスは同じ Oracle データベースと通信します。現在、大量のボリュームが発生しているときに、これらのデータベース エラーが発生しています。
Oracle データベースは、これらの追加サービスからの要求に対応できないように思われます。しかし、どうすればそれを証明できますか。サーバー用に AppD を構成しましたが、データベース用には構成しませんでした。製品環境で実行できるクエリはありますか。これらの PCF アプリケーションが問題を引き起こしていることを示していますか? それとも、別の分野を見た方がいいですか?
ありがとう、
更新 レガシーアプリケーションを調べたところ、結果セットは閉じられています。他の 3 つの PCF アプリケーションは、Spring Boot を使用してデータベースに接続します。私の理解では、接続と結果セットを閉じることは、明示的に閉じる必要はありません。JDBCTemplate は、これらの接続/結果セットを閉じます。追加された PLSQL には、成功と例外で閉じられる追加のカーソルがあります。
更新 セッションIDごとに開いているカーソルの合計を表示するクエリを作成しましたこれはクエリです:
ここで、sessionID をこのセッションを持つアプリケーションにリンクする必要があります。上位のもののosuserは NULL です。また、ほとんどのセッションのステータスはINACTIVE です セッションへのアプリケーションを識別する方法は? 第二に、セッションは非アクティブです。これは、クエリが発生していないことを意味すると思いましたが、開いているカーソルがあるのはなぜですか?
そこで、開いているカーソルが最も多い上位 10 件のセッションを返すクエリを作成しました。
開いているカーソルのほとんどを占めている SQL_TEXT を見つけました...圧倒的に! (87%) では、この SQL を呼び出すクエリを見つけるにはどうすればよいでしょうか? データベースにヒットするサービスが少なくとも 5 つあります。一部のサービスは PLSQL ストアド プロシージャを呼び出し、一部のサービスは生の SQL テキストを呼び出します。開いているカーソルを説明するクエリは、SELECTステートメントとしてリストされます。それはストアドプロシージャではないということですか?または、このSELECTをストアド プロシージャ内で呼び出すことができます。
このセッションを使用する接続を見つけるにはどうすればよいですか?
spring-batch - SQL [SELECT * FROM AH_PATIENT] の uncategorized SQLException; SQL 状態 [60000]; エラーコード [604]; ORA-00604: 再帰SQLレベル1でエラーが発生しました
Spring Boot - Spring Batchコードを PCF DEV 環境にデプロイしています。この環境では、バッチ コードが Oracle Dev に接続され、すべてのデータが mongo dev にロードされます。しかし>cf push
、私はエラーを下回っています。
リンクをたどりました:ORA-01882: timezone region not foundですが、どこを正確に変更すればよいかわかりません。