Ticket #29144

SSL clear_socketエラー対処

Eröffnet am: 2012-07-30 11:08 Letztes Update: 2012-09-04 13:51

Auswertung:
Verantwortlicher:
Typ:
Status:
Geschlossen
Meilenstein:
(Keine)
Priorität:
5 - Mittel
Schweregrad:
5 - Mittel
Lösung:
Gefixt
Datei:
2

Details

クライアント数12000のTPCWによるhttps通信負荷を30分かける試験をすると、 50回に1回の割合でcoreを吐く。

対処として、sslのときsocket.clear_socket()をio_serviceの workerスレッドに登録して処理するようにし、それによって clear_socket()の処理をシリアライズ化する。

Ticket-Verlauf (3/10 Historien)

2012-07-30 11:08 Aktualisiert von: hiroakinakano
  • New Ticket "SSL clear_socketエラー対処" created
2012-07-30 11:10 Aktualisiert von: hiroakinakano
  • Status Update from Offen to Geschlossen
  • Lösung Update from Keine to Gefixt
  • Ticket Close date is changed to 2012-07-30 11:10
2012-07-30 14:27 Aktualisiert von: hiroakinakano
Kommentar

patchは#29143を当てた後のコードとの差分

2012-08-24 11:18 Aktualisiert von: hiroakinakano
  • Status Update from Geschlossen to Offen
Kommentar

デバッグ用にエラーメッセージをinfoからerrorにしていた箇所がそのまま残っていた。

2012-08-28 10:27 Aktualisiert von: hiroakinakano
Kommentar

tcp_session.cpp L908にて、メッセージ処理をすべきところをnext_call_functionを呼んでいた。 メッセージを実行するように処理を変更する。

2012-09-04 13:47 Aktualisiert von: hiroakinakano
Kommentar

メッセージ実行ループの最初にtimed_waitを入れているので、すでにmsgに値が入っていても無駄にwaitするようになっていたのを改善

2012-09-04 13:50 Aktualisiert von: hiroakinakano
Kommentar

close処理メッセージのところでは、close処理以外のメッセージを処理することを想定していない。したがって、message_queueに溜まっているclose以外の処理は、直前にすべて廃棄する必要がある。その処理を追加。

2012-09-04 13:51 Aktualisiert von: hiroakinakano
  • Ticket Close date is changed to 2012-09-04 13:51
  • Status Update from Offen to Geschlossen
Kommentar

v3.0.4-2にここまでの修正が取り込まれたので、完了とする。

Dateianhangliste

Bearbeiten

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Anmelden