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

Socket library send/recv failpoints do not inhibit data transfer when activated

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor - P4 Minor - P4
    • 2.4.0-rc1
    • 2.3.2
    • Internal Code
    • Fully Compatible
    • ALL

    Description

      The socket library in util/net/sock.cpp provides failpoints for calls into its send and recv methods. However, when enabled, these failpoints do not actually prevent the syscall from executing: they only cause the return value of the send or recv syscall to be ignored and force a branch into the error handling logic.

      This makes the failpoints potentially not useful: A test trying to use the failpoints to simulate a network partition, for instance, would see a socket error in the caller, but the intended recipient would actually see the sent data.

      When enabled, the socket send/recv failpoints should inhibit data transfer.

      Attachments

        Activity

          People

            andrew.morrow@mongodb.com Andrew Morrow (Inactive)
            andrew.morrow@mongodb.com Andrew Morrow (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: