Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-18655

Unfinalise AbstractVirtualTable.select(..) for downstream patches

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Patch Available
    • Normal
    • Resolution: Unresolved
    • 5.x
    • Feature/Virtual Tables
    • None
    • Operability
    • Low Hanging Fruit
    • All
    • None
    • Hide

      ci

      Show
      ci

    Description

      In AbstractVirtualTable the select methods are final. This prevents downstream C* engineers from implementing their own virtual tables where the select needs to be overridden.

      This is not a C* API and is not intended for C* users and operators. Extension of these methods should also clearly marked as experimental with no maintenance or compatibility provided from any release to another (including patch versions).

      The original proposal for Virtual Tables (CASSANDRA-7622) was to have a table "backed by an API, rather than data explicitly managed and stored as sstables". A number of people on the ticket supported the eventual idea of user-defined Virtual Tables. The consensus was that an incremental approach should be taken, where this should not be part of the initial implementation, and that use-cases and careful consideration around API security and compatibility would be needed.

      The next incremental approach can be to permit downstream patches to experiment against an explicitly labelled experimental (non-stable) internal code (so to protect the C* community from security and compatibility concerns). Such experiments will help smoke out and promote more grounded discussions for further work, if so found and desired.

      The patch is two lines: to remove the final keyword from both select(..) methods; and adding whatever comment/annotation we need to state their experimental/non-stable state and limited audience.

      Attachments

        Activity

          People

            mck Michael Semb Wever
            mck Michael Semb Wever
            Michael Semb Wever
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: