min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

macOS Safariのアドレスバーに文字入力中に固まるときは「履歴の全消去」で治る

macOSSafariアドレスバーに検索単語を入力中に固まる事象が突然発生した(2020/9/3時点)。

f:id:min117:20200904055002p:plain

 

レインボーアイコンがグルグルして、一切の操作ができなくなる。Dockから強制終了するしかない。

f:id:min117:20200904055016p:plain

文字入力で固まるのは本当にストレス。

 

macOSのバージョンはこれ。

f:id:min117:20200904055156p:plain

OSのバージョンアップが原因かも?と疑ったけど、OSのアップデートまで気長に待つことなどできない。

 

熱暴走か?ディスク障害か?も疑ったけど、Safariだけが遅いChromeだとそうでもない)ところをみるとそうも考えられない。

 

おそらくSafariアドレスバーに文字入力するときに、検索結果の表示と文字の入力とがバッティングしてしてるのではないか(そんな動き)と考えた。

 

Safariをいじったら(一応)解消したのでメモ。下記③で解消した。

 

試したこと

プライベートブラウズモードで(文字入力し)固まるか試す

 f:id:min117:20200904060722p:plain

プライベートブラウズモードだと履歴が読まれないから検索結果の先読みが行われない。なので、結果表示が文字入力とバッティングすることがない。これで固まらなければ、先読みが原因だったと判断できる。

 

Safariの設定を変える

 f:id:min117:20200904061048p:plain

環境設定で「検索エンジンの候補」の表示や「バックグラウンドでのトップヒットの読み込み」をOFFにしてみる。要は検索結果の先読みを行わせない設定にしてみる。設定後はSafariを再起動(できればiMacごと再起動)したほうが良さそう。今回はこれで解消した。 もとい再発した

 

Safariの履歴を消してみる

 f:id:min117:20200904062933p:plain

アドレスバーのトップヒットに候補として出るのは履歴だから、その履歴のほうを削除してしまえばいいという発想。履歴なんて消えても問題ない。固まるよりいい。サクっと消す。今回はこれで解消した(かに見える。まだ分からん。再発するかも)。

 

おそらくだけど直近で訪問したサイトが原因。変な文字コードを使っているサイトだった(utf-8 と shift-jisが混在してる)とか、macOS正規表現が引っ掛けてしまう(オートマトンで無限ループにハマる)ような文字が混在したサイトだったのかもしれない。JavaScriptがバグっていたというのも十分考えられる(作為的か不作為かは分からんけど)。

 

④ Chromeを使ってみる

 f:id:min117:20200904061637p:plain

 f:id:min117:20200904061527p:plain

SafariでダメならChromeで試す。こっちで同じ現象が発生しないならSafari固有の問題だと切り分けることができる。バグ解消のアップデートがされるまではしばらくChromeの運用で耐えるという選択肢。

 

⑤ Google日本語入力を使ってみる

 f:id:min117:20200904061840p:plain

文字入力で固まるということはことえりが(macOSのアップデートで)バグったという可能性も無きにしもあらず。Google日本語入力を入れて、こちらを使ってみる手もある。

 

⑥ 熱暴走を疑う(扇風機でiMac自体を冷やす)

現象が発生したのが暑い日だったので熱暴走も疑った(考えにくいけど)。SafariだけでなくPC全体がモッサリというときは試してみる価値がある。

 

⑦ topコマンドを試す

$ top

 f:id:min117:20200904063512p:plain

対処というよりは原因のモニタリングだが。ロードアベレージ(Load Avg)をみると1.16, 1.27, 1.36しかない。このiMacクアッドコアだからそれぞれ4以下であれば問題ない。のでCPU的には問題なし…と思ってたところ、文字入力がフリーズしたタイミングでPIDのトップにSafariがCPU使用率100%で上がってきた。やはりSafariのバグなのだ。

min117.hatenablog.com

 

⑧ディスク障害を疑う

 心当たりがある(大きなファイルの作成→削除を繰り返していていた)ので、もしかしたーらだけど、内蔵SSDが不調になったか、その前触れかもしれない。このiMacを買ったのが4年前だから、万が一あるかもしれない。

min117.hatenablog.com

ま、PCの不調のときに買い替えるなんていう対処は最悪の悪手だし素人の発想だから、それは考えないでおく。まずはディスク障害を検知するためのモニタリングをもっと本腰いれてやることにする(macOSvmstatないけど他に手はないものか)。

 

参考になった記事

ez-net.jp

applech2.com