Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 0:33

お世話になります。

現在sixcoreサーバ(共有サーバプラン)にて、concrete 5.4.1.1.1を使用しサイトの構築中です。構築用のメインブラウザはFirefoxです。

ブロックを移動する操作をした後から、固まってしまい
管理画面へログインしようとすると、何も出力されなくなる現象が発生しました。
最初はPHPのエラーを疑いましたが、display-errorsを有効にしても出力がなかっため、php.iniにてメモリサイズを増やしたところ
一度は、ログインできるようになりました。
テーブルのようなものがものすごい列×行数でできていました。

また別のブロックの移動を行ったところ今度はまったく反応なしになってしまいました。
原因となりそうなものを探したところ、MySQLでAreas表の行数が数万行にまで膨れ上がっており、delete文でゴミと思われる行を
削除しましたが、php MyAdminの画面をリロードする毎に数百件単位で増え続けています。
#今も増え続けています


この現象の解決方法と、原因をご存知の方がおられましたら教えて頂けないでしょうか。
宜しくお願いいたします。

Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 1:03
原因は不明ですが、恐らくブロックの移動処理が無限ループしていると思います。

phpMyAdminで「プロセス」をクリックし、表示されている該当プロセスを停止すれば増加は止まると思います。
 

Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 1:16
今まで聞いたことがない症状ですね・・・。
うーむー。

今のところ考えられるのは

・MySQL の暴走(サーバー側)
・何らかの形で concrete5 ファイルが欠如(FTPアップロードした場合)
・権限設定の問題

最悪・・・レンタルサーバーの管理者さんに、症状を見てもらわないといけないかもしれません。

concrete5 サイトにアクセスしていないのにテーブルがづえ続けているのであれば、サーバー側が暴走している可能性があります。

状況は、緊急を要するのは痛いほど分かりますが、私たちが、今までに聞いたことのない・・・初めてのケースで、こっちもちょっと分かりませんが、出来る限り、サポートしますよ。
 

Re: Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 1:36
phpの設定で、タイムアウトを設定していないとこんな事になったりしますね。
あとはjavascriptのバグで無限ループしてものすごい数のリクエストを投げたとか
 

Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 11:13
Katzさん、taoさんお返事ありがとうございます。

max_execution_timeはデフォルトで30secになっています。
プロセスの停止で、再度管理画面にログインすることができました。


不正なエラーが発生しました。
mysql error: [1053: Server shutdown in progress] in EXECUTE("select arID, arOverrideCollectionPermissions, arInheritPermissionsFromAreaOnCID from Areas where cID = '1' and arHandle = 'Main : Layout 2 : Cell 1 : Layout 2 : Cell 13093'")

Fatal error: Uncaught exception 'ADODB_Exception' with message 'mysql error: [2006: MySQL server has gone away] in EXECUTE("insert into Logs (logType, logText, logIsInternal) values ('exceptions', '予想外エラー:mysql error: [1053: Server shutdown in progress] in EXECUTE("select arID, arOverrideCollectionPermissions, arInheritPermissionsFromAreaOnCID from Areas where cID = \'1\' and arHandle = \'Main : Layout 2 : Cell 1 : Layout 2 : Cell 13093\'")\n\n#0 /home/ID/ID.sixcore.jp/public_html/concrete/concrete/libraries/3rdparty/adodb/adodb.inc.php(1037): adodb_throw(\'mysql\', \'EXECUTE\', 1053, \'Server shutdown...\', \'select arID, ar...\', false, Object(ADODB_mysql))\n#1 /home/ID/ID.sixcore.jp/public_html/concrete/concrete/libraries/3rdparty/adodb/adodb.inc.php(993): ADOConnection->_Execute(\'select arID, ar...\')\n#2 /home/ID/ID.sixcore.jp/public_html/concrete/concrete/libraries/3rdparty/adodb/adodb.inc.php(1605): ADOConnection->Execute(\'select arID, ar...\', Array)\n# in /home/ID/ID.sixcore.jp/public_html/concrete/concrete/libraries/3rdparty/adodb/adodb-exceptions.inc.php on line 78

という表示が出て止まっていました。


ログインは出来たので増殖しているテーブル(添付ファイル)は削除し無事事無きを得ました。
#ただ、Areas表の行数は3万行まで増えたままです。

発生するタイミングですが、(別のユーザになります)
レイアウトブロックを2列で作成しそれを別のセルへ移動しようとしてそうなってしまったようです。
元々一列のレイアウトブロックを2列にしたりもしたそうです。
それが反映されず色々いじっていたらそうなったそうです。。
GUIのような感じで強引に移動操作を行っていたように見受けました。
私の方では再現が出来ませんでした。

何はともあれ、ログイン画面に入れなかったのが入れるようになりましたので
もし同じエラーが発生しても何とかなりそうです。
ありがとうございます。
添付: .png
 

Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 11:46
余談ですが、レイアウトの追加で
列(縦)
列(横)
とありますが、縦に3列と指定すると横に3列追加されるようです。
ご検証くださいませ。
 

Re: Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 12:27
これは解釈の問題ですが、下記載を参考下さい。

列(縦)3、縦割りの事(横に列を3列追加させる)
列(横)3、横割りの事(横行が下に3行追加される)

※この方が解りやすいと言えばわかり易いのですが。。。
列(追加)3
行(追加)3

※バグ等では有りません。
 

Re: Re: Re: Areas表の行数が増え続け、concreteのログイン画面を開こうとすると500エラーが返る

2011年2月23日 at 13:41
なるほど。縦に3つ割れということなのですね。
了解しました。