Uploaded image for project: 'CouchDB'
  1. CouchDB
  2. COUCHDB-1445

CouchDB deletes .view files if it can't open them, even if the error is "emfile".

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 1.1.1, 1.3
    • Fix Version/s: 1.2, 1.3
    • Component/s: JavaScript View Server
    • Labels:
      None

      Description

      Via Stefan Kögl on dev@:

      Another thing I noticed during my tests of CouchDB 1.2.x. I redirected
      live traffic to the instance and after a rather short time, requests
      were failing with the following information in the logs:

      [Sun, 18 Mar 2012 16:39:24 GMT] [error] [<0.27554.2>]
      {error_report,<0.31.0>,
      {<0.27554.2>,std_error,
      [

      {application,mochiweb}

      ,
      "Accept failed error",
      "

      {error,emfile}

      "]}}
      [Sun, 18 Mar 2012 16:39:24 GMT] [error] [<0.27554.2>]
      {error_report,<0.31.0>,
      {<0.27554.2>,crash_report,
      [[{initial_call,
      {mochiweb_acceptor,init,
      ['Argument_1','Argument_2',
      'Argument__3']}},

      {pid,<0.27554.2>}

      ,

      {registered_name,[]}

      ,
      {error_info,
      {exit,

      {error,accept_failed}

      ,
      [

      {mochiweb_acceptor,init,3}

      ,

      {proc_lib,init_p_do_apply,3}

      ]}},

      {ancestors, [couch_httpd,couch_secondary_services, couch_server_sup,<0.32.0>]}

      ,

      {messages,[]}

      ,

      {links,[<0.129.0>]}

      ,

      {dictionary,[]}

      ,

      {trap_exit,false}

      ,

      {status,running}

      ,

      {heap_size,233}

      ,

      {stack_size,24}

      ,

      {reductions,244}

      ],
      []]}}

      I think "emfile" means that CouchDB (or mochiweb?) couldn't open any
      more files / connections. I've set the (hard and soft) nofile limit for
      user couchdb to 4096, but didn't raise the ERL_MAX_PORTS accordingly.
      Anyway, as soon as the error occured, CouchDB started writing most of my
      view files from scratch, rendering the instance unusable.

      I'd expect CouchDB to fail more gracefully when the maximum number of
      open files is reached. Is this a bug or expected behaviour?

        Attachments

          Activity

            People

            • Assignee:
              tilgovi Randall Leeds
              Reporter:
              jan Jan Lehnardt
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: