Uploaded image for project: 'Couchbase Go SDK'
  1. Couchbase Go SDK
  2. GOCBC-1379

Add support for protostellar to gocb

    XMLWordPrintable

Details

    • Epic
    • Resolution: Fixed
    • Major
    • 2.7.0
    • None
    • None
    • None
    • Go SDK Protostellar Support
    • 0

    Description

      This is effectively a parent ticket for subtasks. This will involve creating a new backend which will be switched to instead of gocbcore, depending on connection string scheme or something like that.

      Gocb should be able to switch to using the PS client rather than gocbcore as the backend. This will likely be done by using the connectionManager and having wrappers for both gocbcore and PS which both implement the abstraction and then perform conversion.

      Backend selection will depend on the connection string scheme. It probably makes sense to have 2 connectionManager implementations, and gocb.Connect itself picks which to use. Alternatively we could have 1 connectionManager which will decide which backend to use and internally toggle its own mode.

      Everything currently calls connectionManager.GetXProvider() to do work so these functions will need to always return interfaces (I think they already do).

      For initial implementation this should probably be to create abstractions and make the gocbcoreps implementation return unimplemented errors or similar. Any references to gocbcore types etc.. should be moved into the gocbcore implementation, and tests should continue to pass.

      All types specific to a backend should not be in the top level internal API and should be translated in the implementation layer.

      Attachments

        Issue Links

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

          Activity

            People

              charles.dixon Charles Dixon
              charles.dixon Charles Dixon
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty