Uploaded image for project: 'C# Driver'
  1. C# Driver
  2. CSHARP-1482

Transient error handling

    • Type: Icon: Task Task
    • Resolution: Done
    • Priority: Icon: Critical - P2 Critical - P2
    • None
    • Affects Version/s: 2.1
    • Component/s: Connectivity
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Server side: a machine hosted in Microsoft Azure running Ubuntu-14_04-LTS and MongoDB 3.0.6

      Client side: A cloud service hosted in Microsoft Azure running Windows 2012 R2 and making calls to the DB using the .NET driver (2.1.0).

      Problem: when requesting too much data we always have an exception like this: System.IO.IOException: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time or established connection failed because connected host has failed to respond.

      This is happening when reading 10 documents (each document in a different request one after other) with a size close to 1KB.
      **The same tests requesting 1000 documents of 450B does not throw this exception so we are a bit lost

      We have thought of retrying the failing statements when this kind of error happens, however, it would not be very clean as we should surround our driver queries/updates in Func<T> blocks to provide a transient error handling.

      Could it be achieve via a subclass/configuration of the driver?

      Thank you

            Assignee:
            Unassigned Unassigned
            Reporter:
            suikevil Roberto Pérez
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: