Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-22138

[CX] Refactor exception handling in LSMInsertDeleteOperatorNodePushable

    XMLWordPrintable

Details

    Description

      The exception handling in LSMInsertDeleteOperatorNodePushable is a bit hard to follow.

      – Feed requires the two classes work together (as producer-consumer) to handle duplicate-key-exceptions:  LSMInsertDeleteOperatorNodePushable and SyncFeedRuntimeInputHandler.

      -- LSMInsertDeleteOperatorNodePushable has to keep track of the cursor of an incoming frame as its state.

       

      There could be an alternative way for doing this:

      – Pass an exception handler interface into LSMInsertDeleteOperatorNodePushable to determine either throw or swallow a duplicate-key-exception and then propagate tuples to the downstream accordingly.  In this way, LSMInsertDeleteOperatorNodePushable can be arbitrarily composable with other runtime operators, with configurable semantics.

       

      Attachments

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

        Activity

          People

            till Till Westmann
            yingyi Yingyi Bu (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty