Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-16903

Prevent query to single mongod from hanging during server power failure

    XMLWordPrintable

    Details

      Description

      During power cycle testing of a single mongod, we found that a client query would hang when the server suddenly terminates due to a power failure.

      The hanging will result in a socket exception only after the tcp keep alive period has expired. The expiration time is tcp_keepalive_time + tcp_keepalive_intvl * tcp_keepalive_probes. The former two values are set to be a maximum of 5 minutes each, but the tcp_keepalive_probes is left at the system default, which is 9 for Windows and Linux. This would result in the socket terminating after 5 + 5 * 9 = 50 minutes. Which is a long time.

      A possible solution is to set the tcp_keepalive_probes to a lower number.

        Attachments

          Activity

            People

            Assignee:
            backlog-server-platform Backlog - Platform Team
            Reporter:
            robert.guo Robert Guo
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Dates

              Created:
              Updated: