登録日
2019年4月12日

メンバー検索

  

infomc0914

名前(ニックネーム)
media3140
ホームページ
http://www.media-ch.com
自己紹介
大学や自治体、社会福祉協議会を中心にConcrete5を活用させてもらっています。ログの解析とサイト制作を通して、クライアントの結果に貢献するサイト制作・運用を得意としております
concrete5.org のユーザー名
media3140
concrete5 Slack Team ID
@media3140
Twitterアカウント
フォーラム総投稿数
4

コミュニティバッジ

インテグレートパートナー concrete5 でサイト制作を行うことができるインテグレートパートナーです。お仕事で concrete5 サイトを構築している個人・企業の方であれば申請できます。詳しくはインテグレートパートナー紹介ページ

投稿

1から4までを表示 (計4)

Re: 唐突にphpのメモリが超過するバグが発生。Core Version -5.7.5.13

なんとかサイトは閲覧できるようになりました。ログを確認してみると

[Fri Jul 17 01:06:48 2020] [error] [client xxxxxxxxxx] PHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 2101248 bytes) in /documentroot/concrete/src/Area/Layout/Preset/Provider/Manager.php on line 37

と見られ、エリアプリセットもエラーを吐いていました。このコア部分の

$presets = array();
foreach($this->providers as $provider) {
//$presets = array_merge($presets, $provider->getPresets());
}

上記箇所にコメントアウトすることでバグが起きなくなりました。(コアをいじるのはご法度ですが...)

しかしエリアプリセットを使えなくしたので、「記事+画像横並び」みたいなレイアウトが崩れて全て縦並びになってしまいました。お客様にはサイトがとりあえず見れるので今のところは大丈夫とのことで、引き続きテーマファイルなどを見直しています。

CMSによるページ編集は禁止にして、エリアプリセットのバグの対処にあたります。ファイルアップロード系のご指摘に感してお客様に尋ねましたが、該当するようなことは行っておりませんでした。アドバイスありがとうございました。

引き続きエリアプリセットあたりのエラーの究明、テーマコントローラーでのエリアプリセットをvagrant上で確認します。

このエリアプリセットあたりに今回のようなバグが発生したというissueやpull request、他のフォーラムではありますか?(念のため英語版の方でも投稿します。)

Posted on 7月 17, 2020 at 12:06 午後

Re: 唐突にphpのメモリが超過するバグが発生。Core Version -5.7.5.13

ご返信ありがとうございます。

インフラの専門家の方と話し合ったところ、phpの制限を上げてもその制限を食い潰す様にまた超過を起こしているので無限ループや膨大なサイズのファイルを参照しようとしている可能性が示唆されました。

また唐突に起きたので、お客様にもその様どんな操作を行ったかを確認を行っています。

vagrant上にこのサイトの開発環境を構築し、同じapplication/fileとDBを入れ込むと同様のエラーが同じページで発生しました。

vagrantで同様のエラーが発生するのでサーバー由来というよりは、concrete5の自作スクリプトor予想だにしない操作が原因の可能性が高いです。ともかく頂いたアドバイスや専門の方と調査を進め、進展がありましたら追記いたします。

Posted on 7月 17, 2020 at 9:59 午前

唐突にphpのメモリが超過するバグが発生。Core Version -5.7.5.13

Concrete5を用いて複数の会社のサイトを運営しております。そのうち5.7.5.13のバージョンを用いているサイトが突如、一部ページは見れるものの一部ページはphpのメモリ超過エラーが発生し閲覧できない事象が発生しました。またサイト全体が重くなってしまっています。

この現象は7月17日に唐突に発生しました。ssl_errologに突如として以下の様なエラーが出力されました。

[Thu Jul 16 20:01:25 2020] [error] [client xxxxxx] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 918016 bytes) in /documentroot/concrete/src/Support/Facade/Database.php on line 22, referer: XXXXXXXX

[Thu Jul 16 20:02:43 2020] [error] [client xxxxxx] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 917504 bytes) in /documentroot/concrete/src/Support/Facade/Database.php on line 22, referer: XXXXXXXXX

[Thu Jul 16 20:03:15 2020] [error] [client xxxxxx] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 924672 bytes) in /documentroot/concrete/src/Support/Facade/Database.php on line 22

[Thu Jul 16 20:03:46 2020] [error] [client xxxxxx] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 915968 bytes) in /documentroot/concrete/src/A
rea/Layout/Preset/Provider/Manager.php on line 37, referer: XXXXXXXXX

[Thu Jul 16 20:03:50 2020] [error] [client xxxxxx] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 918016 bytes) in /documentroot/concrete/src/Support/Facade/Database.php on line 22, referer: XXXXXXXX

concrete以外にapacheやphp、その他のソフトに問題があるかを確かめ対処を行いましたが、閲覧ができないページは依然として残り、最終的に上記のエラーは出力され続けました。

このサーバーでは他のサイト(Concrete5)も管理しており、バーチャルホストで区切っています。そしてphpや他のリソースは共用なので、サーバーに問題があれば他のサイトでも閲覧不可のページは発生します。しかし他のサイトは特にその様な問題はなく、5.7.5.13のサイトのみこのエラーが発生します。

カスタムブロック、独自パッケージの実装などもあるため要因は多岐に渡ると思います。しかし/concrete/src/Support/Facade/Databaseでphpのメモリ超過が繰り返し報告されているのでデータベースに接続するも、無限ループか何かが起きているのでは?データベースに接続するcoreのものか自作の物が影響しているのでは?と思っています。

このエラーは今日いきなり発生し、このサイト自体は5年前から運営して今日までこの様なエラーは発生しませんでした。エラーログよりお客様がこのサイトを一部編集した際に起きたので、予想外の使い方をされたのか?と思いヒアリングをしましたが、ただ記事ブロックを追加しただけとのことで、特に問題はない様な気がします。

もし何か気づきの点がありましたらぜひアドバイス塔お願いします。アメリカのC5フォーラムにも同様の質問を投げようと思っています。

以下サーバーのバージョン等です。

CentOS release 6.8 (Final)
Server version: Apache/2.2.15 (Unix)
PHP 5.4.45 (cli) (built: Aug 23 2016 14:41:13)
mysql 5.7.17
Concrete 5.7.5.13

・一部のページは「待機中」となりずっと見れない。
・静的書き出しなどは行っていない。
・一部のページは見れる。しかし重い
・サイトに複数人がアクセスするとかなり重くなる。最悪、サイトが応答しなくなる。
・ログインは何とかできる。
・ダッシュボードは重いがなんとか動く。サイトマップはシステムページを含めようとすると待機中となってしまう。

・Apacheのエラーログは以下の物が大量に出力される。
Failed loading opcache.so: opcache.so: cannot open shared object file: No such file or directory
[Thu Jul 16 16:51:44 2020] [notice] child pid 12360 exit signal Segmentation fault (11)

Posted on 7月 17, 2020 at 12:46 午前

Re: 記事ブロックを編集→保存で空のエラー

5月3週目あたりにこちらのエラーで悩みました。chromeだけ、会社のwindowsPCのみで起きていて不思議だったのですが、chromeのアップデートによるエラーだったのですね。ありがとうございます。

PCやOSによる違いが出る場合ははchromeの自動更新の許可によるものだと思います。chrome83系にすると発生します。

私の方の症状としましては
・自作ブロック、concrete5純正ブロック全ての「保存」を行うと、空のエラーが発生する。
・しかし、DB上には保存され、ページ読み込みをするときちんと内容は反映される。
・ブロックの削除は普通に行える。
・記事ブロックの場合はページ操作が不可能になる。
・chrome developer tool consoleには特に何も表示されない。

そして検証としてchromeを83系にアップグレードをすると
concrete5.8,concrete5.7系にて同様なエラーが発生しました。

Posted on 5月 28, 2020 at 7:26 午後