問題タブ [c3p0]

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 に答える
4538 参照

java - Hibernate と Mysql のタイムアウトの問題、c3p0 では機能しない

Hibernate と Mysql のタイムアウト エラーに 1 週​​間悩まされています。どうやら、Hibernate/MySQL が 8 時間 (Mysql のデフォルトのタイムアウト値) 後に実行された後、例外が発生しました。c3p0も追加しました。しかし、それは役に立ちません。

アドバイスよろしくお願いします

ここに私の休止状態の設定があります:

トレースは次のとおりです。

0 投票する
2 に答える
3725 参照

java - c3p0データベースプールエラー

接続プールとして3cp0を使用してプログラムを30分ほど実行すると、次の例外が発生します。

エラーは次のとおりです。

そして私はこのように私のプールを設定しています:

ページをクロールする100個のスレッドがあり、次に結果をデータベースに挿入する15個のDBスレッドがあります。クロールタスクに20秒以上かかる場合は、スレッドを強制終了します。データベース接続プールが停止する理由はありますか?

ありがとう

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

java - org.springframework.jdbc.CannotGetJdbcConnectionException で JDBC 接続情報をログに記録する方法

Ibatis および C3P0 接続プールと組み合わせて Spring フレームワークを使用するアプリケーションに取り組んでいます。システムは、約 12 の個別のデータベースに接続します。

データベースの 1 つに到達できない場合、Spring によって生成されたログファイルにスタック トレースが記録されます (以下を参照)。ただし、このログには、到達できないデータベースに関する非常に重要な情報が欠落しています。

基本的に、接続エラー時に jdbc 接続文字列 (パスワードなし) をログに記録したいと考えています。これをログに記録するようにSpringに指示する簡単な方法はありますか?

....

0 投票する
3 に答える
2088 参照

java - Hibernate、c3p0、およびMysql:java.io.EOFException

MySQLc3p0でHibernateを使用していますが、MySQL接続が8時間後に期限切れになると()、Hibernateは再接続できず、次の例外が発生します。wait_timeout

これはhibernate.cfgです:

これは私のc3p0.propertiesファイルです:

アップデート:

ログファイルの下:

どんなヒントでも大歓迎です。
ありがとう

0 投票する
6 に答える
68988 参照

java - com.mchange.v2.resourcepool.CannotAcquireResourceException: ResourcePool は、プライマリ ファクトリまたはソースからリソースを取得できませんでした

Hibernate の下に MySQL があり、接続プールにも c3p0-0.9.1 を使用しています。

ラップトップで実行している場合 (つまり、ローカルで実行している場合)、エラーは発生しません。しかし、サーバーにデプロイすると、次の例外が発生します。

これは私のスタックトレースです:

0 投票する
2 に答える
15580 参照

java - java c3p0: autoreconnect=true を設定するにはどうすればよいですか?

Java を使用して red5 アプリケーションを作成しており、データベースとのやり取りに c3p0 を使用しています。

私のMySQLサーバーで接続がタイムアウトした後、私のアプリケーションはautoreconnect = trueを設定するように提案して動作を停止したようです。

どうすればそうできますか?

これは、データソースを作成するために使用する関数です:

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

java - c3p0 ループと OSGi

プロジェクトを OSGi バンドルにラップします (Activator.start() から最初の開始メソッドを呼び出すだけです)。私のプロジェクトでは、ORM ActiveObjects と c3p0 プールを使用しています。プロジェクトの依存関係 (jar ライブラリ) はすべてクラスパスにあります。プロジェクトを c3p0 で実行すると、DB への 1 つのクエリに約 5 分かかります。c3p0 がなければ正しく動作します。問題とは何ですか?どうもありがとう!

0 投票する
2 に答える
1255 参照

mysql - Hibernate/c3p0/MySQL でのネットワーク遅延

レイテンシーがかなり高く (~80ms)、帯域幅が比較的広い接続を介して、MySQL (InnoDB) データベースに接続しています。

クエリの発行方法によって、クエリ時間が大幅に異なることに気付きました。次の例では、主キーによって単一の小さな行に対してクエリを実行しています。クエリ時間は次のとおりです。

  • コマンド ライン クライアント ( mysql): ~160ms
  • 生の JDBC: ~240ms
  • ハイバネート: ~400ms (~0ms 開始、~160ms 取得、~240ms コミット)
  • ハイバネート、L2: ~240ms (~0ms 開始、~0ms 取得、~240ms コミット)
  • ハイバネート、c3p0: ~880ms (~160ms 開始、~240ms 取得、~480ms コミット)
  • ハイバネート、L2+c3p0: ~640ms (~160ms 開始、~0ms 取得、~480ms コミット)

(「L2」は Hibernate の第 2 レベルのキャッシュが有効になったことを意味し、「c3p0」は c3p0 が有効になったことを意味し、「begin」、「get」、および「commit」は、クエリ中に呼び出されるさまざまなサブメソッドのタイミングです)

これらは、おおよそ「定常状態」の結果であるため、L2 キャッシュはホットであり、Hibernate の起動時間は無視されます。L2 キャッシュが有効な場合、実際には get が発行されないため、「get」は通常 0ms であると想定しています。

私の質問は次のとおりです。

  • すべてのクエリが、ネットワーク レイテンシの何倍にもなっているのはなぜですか? コマンド ライン クライアントでさえ、mysql単純なクエリに 2 回の往復が必要なようです。
  • すべての JDBC/Hibernate クエリがコマンドライン クライアントよりもずっと遅いのはなぜですか? 生の JDBC クライアントでさえ、3 回の往復が必要なようです。
  • c3p0 がすべてを悪化させるように見えるのはなぜですか? 私が知る限り、接続テストを無効にしましたが、そうでなければ物事を説明することができました.
0 投票する
11 に答える
68241 参照

java - スレッドがすべて空の場合、C3P0 の明らかなデッドロック?

Tomcat の接続プールとして C3P0 を使用していますが、非常に心配なエラーが表示されます。

行 534 は次のとおりです。

すべてのスレッドがアイドル状態であるように見えます。彼らは仕事を待っています。アクティブなスレッドは 0 で、完了すべきタスクは 1 つだけです。何が問題なのか手がかりはありますか?

構成は次のとおりです。

0 投票する
3 に答える
6607 参照

java - Hibernate + c3p0 + MySqlが多数のスリープ接続を作成するのを防ぐにはどうすればよいですか?

私はGWTとHibernate、c3p0、およびMySQLを使用して、限られたオーディエンス(1日あたり最大50ユーザー)でWebアプリを作成しています。close()テスト中に、メソッドの使用に関係なく、Hibernateが各セッションとの接続を開いていたが、閉じていなかったことがわかりました。

私の現在の構成は次のとおりです。

アプリケーションへの新しい接続ごとに、新しいプールが作成されます。たとえば、プールサイズを3に設定した場合、アプリケーションへの2つの接続は、アプリケーションが閉じられるまで6つの接続になります。

意図された動作は、各トランザクションの後に接続を単に閉じるか再利用することです。どうすればこれを達成できますか?