Jane Style Part143

■ このスレッドは過去ログ倉庫に格納されています
2018/03/17(土) 19:55:42.35ID:4rPa23FZ0
天才プログラマー 山下遼太 氏の
超高機能2ちゃんねる/5ちゃんねるブラウザー「Jane Style」

●前スレ
Jane Style Part142
https://egg.5ch.net/test/read.cgi/software/1519856192/
●質問用スレ
Jane Styleの質問に誰かが答えるスレ Part60
https://egg.5ch.net/test/read.cgi/software/1518145365/

●スマホアプリ版JaneStyleスレ
【専ブラ】2ちゃんねるブラウザ「JaneStyle」 Part5
https://fate.5ch.net/test/read.cgi/ios/1511767931/
Jane Style for Android Part1
https://potato.5ch.net/test/read.cgi/android/1476438569/

公式サイト(ダウンロード)
http://janesoft.net/janestyle/

5ちゃんねるプレミアムRonin
http://premium.5ch.net/

現在の最新バージョン
Version 4.00正式版(2017年11月09日) =4.05

過去ログ取得ツール
http://pastebin.com/3EZzrsxY

ジェーンBBS(したらば)
http://jbbs.shitaraba.net/internet/8173/
1
2018/03/17(土) 20:34:57.15ID:4rPa23FZ0
42
スパイルがhttpSになってから
 Connection: Keep-Alive
が指定されてるっぽいんだよね。443のポート。
確かhttp時代はcloseで張られてなかったのに。

今みたら同じ鯖に2つのコネクション張ったよ(5分以上残ったKeep-Aliveと一緒に新規のコネクションが)。

44
104.20.26.96
leia.5ch.net (など?分散してるから単純じゃない。)
だわ
やっぱり6分40秒(400秒)の接続が見られた

5ch側のCFがおかしいのか?
leia.5ch.netって嫌儲だけだよな
嫌儲なんてリロードした覚えないぞ。

104.20.27.96 でも確認

45
Spyle 大半の通信は即closeだけど、不明なタイミングで最長6分40秒のコネクションが貼られる。
  破棄するでも、使いまわすでもなく、同一IPへ向けて重ねて新たなコネクションを張ってるように見える。
  重い原因の一つって山ピーが問題なんじゃ?
2018/03/17(土) 20:36:06.75ID:4rPa23FZ0
https://egg.5ch.net/test/read.cgi/software/1519856192/158,159,162,167,176
158
スレ更新しようとして暫く黄色い表示のまま固まる現象が頻発するの勘弁してくれ

159
あーそれあるな
結局タイムアウトなのか更新されないままになって
もう一度更新させてやるとあっさりなったりな

162
それ5ch鯖の問題でJane関係ない

167
>>162
5chの鯖側で問題が起きた時にJaneStyle側でそれに対応した挙動をするようにしとかないといけない
それが出来てないんだからJaneStyle側の問題なんだよ
初めてのお使いで目的の店が閉まってた時買い物でき合いのは仕方がないんだが
黙ってその場で立ち尽くしてたら駄目で帰って親に報告しなきゃいけないわけだろ
普通のソフトは後者、JaneStyleは前者の振る舞いをするわけだ

176
>>167
それ、画像の多いスレを開いたときに固まったりするのにも言えるよな。
メモリだかリソースだかが足りなくなったときの処置ってことで。
単純にメモリが少ないのが悪いとか一緒に使ってるソフトが悪いとは言い切れない。
2018/03/17(土) 20:36:52.72ID:4rPa23FZ0
247
api.5ch.netへの接続が、6分40秒、ときに2時間以上続く謎挙動の原因わかっちゃったかも。

http://f99aq.hateblo.jp/entry/20110710/1310296402
SSL_pendingで終わるのがあやしい、
read仕切れてないんじゃない?

解放系関数群 {SSL_shutdown, SSL_free, SSL_SESSION_free, SSL_CTX_free, SSL_SRP_CTX_free, SSL_CTX_flush_sessionsなど}として
1. Spyleがapi.5ch.netにアクセス成功した場合
  概ね、SSL_write→SSL_pendingの後、SSL_read→SSL_pendingで終わっている。
  その後、6分40秒経とうが外から強制切断しようが、解放系は呼ばれていない感じ。

2. Spyleがapi.5ch.netにアクセス中に失敗した場合  解放系は呼ばれている。
3. Spyleがdatを取りに行った場合  成功、失敗ともに解放系は呼ばれていると思われ。
4. Spyleでスレに書き込む場合  解放系、多分問題なし。
5. 広告や画像へのアクセス  知らん


250
1.
6分40秒間無通信の後に
api.5ch.net側から
TLSv1 Alertと
FIN+ACKを受け取ったぞ。

ということでSpyle側がストールしてるのは明白。
2018/03/17(土) 20:38:38.35ID:4rPa23FZ0
https://egg.5ch.net/test/read.cgi/software/1519856192/404,405,407
405
非串
   keep-aliveにより6分40秒問題発生。明示的にクローズしてないなら
  OpenSSL側もフラグ立てられず、解放系がいつ呼ばれるかわからない。
   作者はSSL_connect〜SSL_writeのあたりに20秒以上のwait入れて故意にエラーを起こしてみよう、
  そうすれば解放系が呼ばれる。
串経由
  keep-aliveがないHTTP/1.0なので、即切断。解放系が呼ばれる。

407
HTTP/1.0かつ串を経由しない場合のみヘッダが異なる(keep-aliveが付く)ってこと?


https://egg.5ch.net/test/read.cgi/software/1519856192/740,749,751,763
740
asyncObj.synchro.Wait;
↑ ここで止まってた (WaintForSingleObject)
datを受信しに行った最中に同期が崩れた模様。
751
>>740
とりあえず、
dat取得の瞬間にデッドロックが起こるのはここ。
広告や画像への通信は知らんから。
もしあれならOpenSSLやめれば?


763
どうでもいいけど「デッドロック」とは違うと思う
言うなれば「無限ロック」「永久ロック」ってところじゃない
ていうか「固まる」「フリーズ」って本体が一切操作できず強制終了する位しか手がない状態って事であってるよね?
ソース読んでないしDelphi知らんけど通信スレッドがwaitで止まったからってメインスレッドが固まっちゃうの…?
2018/03/17(土) 20:41:13.50ID:4rPa23FZ0
864
書き込みの際にタイムアウトするまで一時的に固まることは以前からあった
そして復帰不能なフリーズが発生するようになったのは、3月に入ってから
スレタイ検索のff2chが無くなってff5chに強制移行した時期とほぼ一緒かな
俺のメモを見る限り初回発生が3月2日だから

920
環境書けって言ってる人もいるけどPCのスペック自体は
CPUだろうとメモリだろうとグラボだろうと一切以前と変わってないし
OSだってWindows10のままだし
変わったことと言えばJaneStyleを3.84から4.00にしたことと2chが5chに変わっただけなんだから
3.84使用時には一切なかったエラーが今4.00使用時に頻発し始めてるなら
明らかに使用者側の環境に問題があるんじゃなくJaneというソフト自体か5ch鯖側の問題だろうに


928
◎ api.5ch.netへ接続が失敗した際の処理が甘い。

◎api.5ch.netにアクセスしてる間に、ユーザーがdatを取得した。
 SSLセッションや5chAPIセッションの排他制御の不備で、解放してしまった

でどちらもasyncObj.synchro.Release;にたどり着けず、ということ。

5chAPIのsidは2時間に一回位取りに行くんだろ?
作者の環境ならそのタイマーを極端に短くして、dat取得しまくってデッドロックすれば
それだろう。



>>17-21
■ このスレッドは過去ログ倉庫に格納されています
大学生アイラと影の怪物と戦うリョウが、深夜3時3分の静止した世界で交錯する超常スリラーの概要

ニューススポーツなんでも実況