1

Rails Web サイトの実行中に次のエラーが発生しました。これが原因でダウンしていると思います。私は Passenger を使用していますが、サイトのトラフィックが非常に多くなっています。オンラインに戻そうとすると、Apache が多数の子を生成し、マシンの負荷が約 50 に跳ね上がり、サイトが非常に遅くなります。ディスクに不足はありません。

PGError (FATAL:  could not access status of transaction 0
DETAIL:  could not write to file "pg_subtrans/009B" at offset 8192: No space left on device):
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:876:in `initialize'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:876:in `connect'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:876:in `connect'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:276:in `initialize'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `new'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb:292:in `send'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb:292:in `connection='
    /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb:260:in `retrieve_connection'
    /vendor/rails/activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb:78:in `connection'
    /vendor/rails/activerecord/lib/active_record/query_ca
4

2 に答える 2

1

「デバイスに空き容量がありません」というエラーは、必ずしも容量不足が原因であるとは限りません。また、ファイルシステムの inode テーブルがいっぱいになったことが原因である可能性もあります。つまり、ファイルシステムが非常に多くのファイルしか保持できず、その制限に達した場合です。

これは、非常に多数の小さなファイルがある場合に発生する可能性があります。このような状況では、大きな inode テーブルを持つ新しいファイルシステムを構築して、多数の小さなファイルを許可するのが一般的です。

于 2009-09-03T21:38:51.497 に答える
0

もう 1 つの可能性は、ユーザーごとのディスク クォータです。http: //www.postgresql.org/docs/8.4/static/disk-full.html を参照してください。

于 2009-09-03T21:44:58.033 に答える