Uploaded image for project: 'Couchbase Java Client'
  1. Couchbase Java Client
  2. JCBC-117

mention that OperationFuture.get(tmo) changes state when timeout has been reached

    Details

    • Type: Improvement
    • Status: Reopened
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.0.3
    • Fix Version/s: .backlog1.x
    • Component/s: Documentation
    • Security Level: Public
    • Labels:
      None

      Description

      get(tmo) should not change the underlying state of the command to being timed out. It should simply respond with a TimeoutException but allow the command to continue.

      Specifically, when the arg-tmo (timeout passed as an argument) expires, the underlying command is marked as timed out. For example, if one waits for 50ms on the command and a response has not been received within that time, the command is now dead ('TIMEDOUT', or similar) and waiting again will not help.

      It is understandable that some code might rely on the old behavior, so at the very least, this should be documented in 'BIG RED LETTERS' in the get(tmo) method.

        Issue Links

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

          mnunberg Mark Nunberg created issue -
          ingenthr Matt Ingenthron made changes -
          Field Original Value New Value
          Assignee Raghavan Srinivas [ rags ] Mark Nunberg [ mnunberg ]
          ingenthr Matt Ingenthron made changes -
          Fix Version/s 1.1 [ 10274 ]
          mnunberg Mark Nunberg made changes -
          Assignee Mark Nunberg [ mnunberg ] Michael Nitschinger [ daschl ]
          Description get(tmo) should not change the underlying state of the command to being timed out. It should simply respond with a TimeoutException but allow the command to continue.

          It is understandable that some code might rely on the old behavior, so at the very least, this should be documented in 'BIG RED LETTERS' in the get(tmo) method.
          get(tmo) should not change the underlying state of the command to being timed out. It should simply respond with a TimeoutException but allow the command to continue.

          Specifically, when the arg-tmo (timeout passed as an argument) expires, the underlying command is marked as timed out. For example, if one waits for 50ms on the command and a response has not been received within that time, the command is now dead ('TIMEDOUT', or similar) and waiting again will not help.

          It is understandable that some code might rely on the old behavior, so at the very least, this should be documented in 'BIG RED LETTERS' in the get(tmo) method.
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1-dp4 [ 10390 ]
          Fix Version/s 1.1 [ 10274 ]
          daschl Michael Nitschinger made changes -
          Assignee Michael Nitschinger [ daschl ] Mark Nunberg [ mnunberg ]
          ingenthr Matt Ingenthron made changes -
          Link This issue blocks JCBC-114 [ JCBC-114 ]
          ingenthr Matt Ingenthron made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Won't Fix [ 2 ]
          mnunberg Mark Nunberg made changes -
          Resolution Won't Fix [ 2 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          mnunberg Mark Nunberg made changes -
          Summary OperationFuture.get(tmo) should not change state when timeout has been reached mention that OperationFuture.get(tmo) changes state when timeout has been reached
          Component/s docs [ 10141 ]
          Component/s library [ 10140 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1-dp5 [ 10410 ]
          Fix Version/s 1.1-dp4 [ 10390 ]
          ingenthr Matt Ingenthron made changes -
          Assignee Mark Nunberg [ mnunberg ] Michael Nitschinger [ daschl ]
          daschl Michael Nitschinger made changes -
          Issue Type Bug [ 1 ] Improvement [ 4 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1beta [ 10370 ]
          Fix Version/s 1.1-dp5 [ 10410 ]
          ingenthr Matt Ingenthron made changes -
          Fix Version/s 1.1.0 [ 10274 ]
          Fix Version/s 1.1-beta [ 10370 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.1 [ 10430 ]
          Fix Version/s 1.1.0 [ 10274 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.2 [ 10480 ]
          Fix Version/s 1.1.1 [ 10430 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.3 [ 10496 ]
          Fix Version/s 1.1.2 [ 10480 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.4 [ 10514 ]
          Fix Version/s 1.1.3 [ 10496 ]
          daschl Michael Nitschinger made changes -
          Planned Start (set to new fixed version's start date)
          Planned End (set to new fixed version's start date)
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.5 [ 10515 ]
          Fix Version/s 1.1.4 [ 10514 ]
          daschl Michael Nitschinger made changes -
          Planned Start (set to new fixed version's start date)
          Planned End (set to new fixed version's start date)
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.6 [ 10531 ]
          Fix Version/s 1.1.5 [ 10515 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.7 [ 10532 ]
          Fix Version/s 1.1.6 [ 10531 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.1.8 [ 10628 ]
          Fix Version/s 1.1.7 [ 10532 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.2 [ 10383 ]
          Fix Version/s 1.1.8 [ 10628 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.2 [ 10383 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s 1.2 [ 10383 ]
          daschl Michael Nitschinger made changes -
          Fix Version/s .next [ 10495 ]
          Fix Version/s 1.2 [ 10383 ]
          ingenthr Matt Ingenthron made changes -
          Workflow jira [ 20871 ] Couchbase SDK Workflow [ 38400 ]

            People

            • Assignee:
              daschl Michael Nitschinger
              Reporter:
              mnunberg Mark Nunberg
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:

                Gerrit Reviews

                There are no open Gerrit changes