NoMemoryError when uploading large file

Discussion in 'Ruby/Rails' started by cjwoodward@gmail.com, Jul 3, 2009.

  1. Hi,

    When I upload a large file I get the following issue:

    NoMemoryError (failed to allocate memory):
    /vendor/rails/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb:193:in `quote'
    /vendor/rails/activerecord/lib/active_record/query_cache.rb:72:in `send'
    /vendor/rails/activerecord/lib/active_record/query_cache.rb:72:in `method_missing'

    I am using ubuntu 9.04 but have had this issue on older version of ubuntu as well.

    I am on a 256 mb slicehost account. Free -m outputs:

    total used free shared buffers cached
    Mem: 256 71 184 0 2 15
    -/+ buffers/cache: 53 202
    Swap: 511 60 451

    I have changed my memory limits in both Server/Security and Server/Ruby to 256M.

    Everything works fine if I start the application with mongrel and upload the file there.

    If you have any ideas, please let me know?

    Thanks,
    Carl.
  2. mistwang

    mistwang LiteSpeed Staff

    You need to increase the memory limit under "Server"->"Rails" tab.
  3. mistwang

    mistwang LiteSpeed Staff

    Maybe you already did that. anyway, you can set it to a value higher than 256M.
    check the memory usage of ruby process while you upload the file.
  4. I have set it to 400M and its still not working. Anything else to try?
  5. mistwang

    mistwang LiteSpeed Staff

    set "Max Connection" to "1", see if it help or not. Maybe the 256M VPS limit has been hit due to multiple "ruby" process running, each process use a lot of memory.

Share This Page