Uploaded image for project: 'Java Driver'
  1. Java Driver
  2. JAVA-5476

Session not marked dirty on socket timeout with CSOT enabled

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 5.2.0
    • Affects Version/s: None
    • Component/s: CSOT
    • None
    • Java Drivers
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      Description: 

      When a socket timeout occurs with Client-Side Operation Timeout (CSOT) enabled, the session is not being marked as dirty as required. According to session's specification:

      If a driver has a server session pool and a network error is encountered when executing any command with a ClientSession, the driver MUST mark the associated ServerSession as dirty.

       

      Network error
      Any network exception writing to or reading from a socket (e.g. a socket timeout or error).

       
      Expected Behavior:
      When CSOT is enabled and socket timeout occurs, the ServerSession should be marked as dirty upon encountering a network error.

      Actual Behavior:
      When CSOT is enabled and socket timeout occurs, the ServerSession is not marked as dirty.

            Assignee:
            slav.babanin@mongodb.com Slav Babanin
            Reporter:
            slav.babanin@mongodb.com Slav Babanin
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: