V6.94β12No.06526
秀まるお2 さん 20/04/03 16:37
 
 矢継ぎ早ですみませんが、秀丸メールのVersion 6.94β12をアップロードしました。

32bit版:
https://hide.maruo.co.jp/software/bin3/hmmail694b12_signed.exe

64bit版:
https://hide.maruo.co.jp/software/bin3/hmmail694b12_x64_signed.exe

 β11でいじった処理(このメールのスレッド系コマンド)がうまく動いてませんで
した。いろいろなパターンでテストしないとダメでした。

 よろしくお願いします。

[ ]
RE:06526 V6.94β12No.06529
ながまる さん 20/04/04 01:19
 
β11で起きた問題をどう説明したらよいか迷ってたところだったので、助かりました。

ただ、β12でも同コマンドでおかしな処理が見られます。

(In-Reply-To で無理やり連結したものではなく) 実際に Message-ID で正しくスレ
ッド化されているメールの一部で 「このメールのスレッド系コマンド」を実行した
ときに、

* 一覧のメールが少ない場合、 Message-ID が無関係のものも含め、一覧のメールが
全て結果に出てしまう
* 一覧のメールが多い場合、検索に著しく時間がかかり、以下のいずれかの症状になる
** Esc で中断できない
** Esc で中断できた場合、同じメール(試し限りだと、スレッドのルートのメー
ル)がウィンドウ上に大量に重複して並ぶ

といった症状が出ます。

この症状が出るメールスレッドと出ないメールスレッドがあり、
同じアカウント内であればどこのフォルダに移動させても必ず問題が発生する再現性
があるのですが、
一見全く同じ様な構成のスレッドでも出るものと出ないものがあって、その違いは少
し調べたかぎりではわかりませんでした。

偶然かもしれませんが、この問題が発生していることを見つけたスレッドでは、いず
れも

+AAA01
  +AAA02
  +AAA03
  [...]
  +AAA10
  [...]

という共通の親を持つ形で、10通以上のメールでスレッドを構成していました。
(ただ、スレッド内のメール数が多いからといって必ず発生するわけではなさそうで
す。)

また、問題が起きるメールスレッドをエクスポートして、他のアカウントでインポー
トしても、再現しません。

[ ]
RE:06529 V6.94β12No.06531
秀まるお2 さん 20/04/04 09:38
 
 お手数かけてすみません。

 一応、今回追加した処理は、スレッドの根元のメールが見つからない場合に限って
動くはずの処理でして、スレッドの根元が見つかる場合、つまり、In-Reply-To:/Ref
erneces:ヘッダの無いメールが見つかったら、従来通りのはずです。

 今回問題が起きてるスレッドは、根元のメールにIn-Reply-To: / References:が無
い、普通にスレッドが完成してるメールで起きてるのか、それともたしかに根元の
メールが見つからないケース、つまり、画面上でスレッドを見て、その根元のメール
にIn-Reply-To:が存在してるケースなのか、どっちかだけ教えてもらえないでしょう
か。

[ ]
RE:06531 V6.94β12No.06536
秀まるお2 さん 20/04/04 17:36
 
 一応、極端に遅くなる可能性については原因が分かったので、それについて対処さ
せていただきます。あと、Escキーでのキャンセルが効かないことがあるのも対処さ
せていただきます。

 問題が起きるのは、やはりスレッドの根元になるべきメールが無かった場合に限っ
てだと思います。連絡いただいた例だと、

+AAA01

 のメールにIn-Reply-To:/References:ヘッダがあるんだと思います。それがあると、
それと同じIn-Reply-To:を持つメールを探すんですが、同じメールが大量にあると極
端に遅くなるようではあります。

 In-Reply-To:が同じメールじゃないはずなのに同じメールとしてヒットしてしまう
理由はまだよく分からないですが・・。そこの原因はまた考えます。

[ ]
RE:06536 V6.94β12No.06548
ながまる さん 20/04/05 23:07
 
> 今回問題が起きてるスレッドは、根元のメールにIn-Reply-To: / References:が
>無い、普通にスレッドが完成してるメールで起きてるのか、それともたしかに根元
>のメールが見つからないケース、つまり、画面上でスレッドを見て、その根元の
>メールにIn-Reply-To:が存在してるケースなのか、どっちかだけ教えてもらえない
>でしょうか。
>
回答を先に言うと、どちらでもありませんでした。

具体的には、問題が起きているスレッドは、少なくとも私が遭遇した限り(10スレッ
ド前後)において、いずれも以下の 両方 を満たしていました。

* In-Reply-To: や References: で参照されている根元のメールがたしかに存在して
いる。
* 根元のメールのヘッダには、 In-Reply-To: / References: ヘッダが存在しており、
 そのメール自身の Message-ID が記録されている。

例としては以下のようなヘッダのメールで、スレッドが構成されていました。。

根元のメール:

Message-ID: <"a35cbbe0@hostname1.exapmple.co.jp">
In-Reply-To: <"a35cbbe0@hostname1.exapmple.co.jp">
References: <"a35cbbe0@hostname1.exapmple.co.jp"> <"be43d5c8@hostname2.examp
le.com">

スレッドの子どものメール:

Message-ID: <"6896c1b0@hostname1.exapmple.co.jp">
In-Reply-To: <"a35cbbe0@hostname1.exapmple.co.jp">
References: <"a35cbbe0@hostname1.exapmple.co.jp"> <"2aa0f79c@hostname2.examp
le.com">


※: サポートフォーラムの制限を回避するために、 Message-ID に引用符をつけてい
ますが、実際には各ヘッダの Message-ID には引用符はありません。

ちなみに、上記例の References の二つ目の項に存在している Message-ID <"be43d5
c8@hostname2.example.com"> を Message-ID: ヘッダにもつメールは存在しません。
この通知メールを送付するシステムが、このようなお行儀が悪いヘッダをつけてしま
うようです。。。

[ ]
RE:06548 V6.94β12No.06549
秀まるお2 さん 20/04/06 09:26
 
 再現方法を特定していただいてありがとうございます。こちらてもテストして再現
できまして、さらに調べたら、以前のバージョンからのバグでした。無限ループして
ました。

 ちゃんとループを抜け出すように修正させていただきます。

[ ]
RE:06526 V6.94β12No.06555
ヒラメ さん 20/04/06 15:52
 
私のところでは6.94β12でスレッド表示が快適に動作するようになりました。早速の
ご対応ありがとうございました。

[ ]