Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-9351

Connection capability negotiation

    XMLWordPrintableJSON

Details

    • Brainstorming
    • Status: Closed
    • Major
    • Resolution: Later
    • 0.99.0
    • None
    • None
    • None

    Description

      Would be useful to support negotiation at connection setup time beyond SASL. Consider:

      Start with a default baseline profile. Both client and server sides can begin communicating immediately (or after SASL completes if security is active), with a baseline set of messages and codecs.

      For more interesting use cases, support configuration messages that negotiate connection configuration going forward after both sides ack the changes: codec, configuration, compression. Any nack aborts the upgrade request and leaves both sides still in the default profile.

      Should be a pluggable implementation. For example, codec implementations should be automatically discovered at runtime if shipped with the client or server, and the set of available options should be communicated to the other side.

      Features like codecs should all be versioned themselves. Negotiation should be version aware, and decisionmaking on if a given pair of component versions are compatible should be delegated to the component.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              apurtell Andrew Kyle Purtell
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: