Transactions do not allow for disabling the CSOT by setting timeout_ms=0

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • Ruby Drivers
    • None
    • None
    • None
    • None
    • None
    • None

      WHAT

      We noticed that setting timeout_ms=0 (for transactions) or default_timeout_ms=0 (for sessions) results in the transaction being aborted immediately due to a timeout error. This is inconsistent to how other operations behave when timeout_ms is set to 0 where the documentation usually states something like

      The operation timeout in milliseconds. Must be a non-negative integer. An explicit value of 0 means infinite. The default value is unset which means the value is inherited from the collection or the database or the client.

      We believe this to be the case because 0 is treated like any other value when determining the transaction deadline whereas CsotTimeoutHolder#timeout? treats them differently

      REFERENCES

            Assignee:
            Dmitry Rybakov
            Reporter:
            Paul Gillesberger
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: