Michael Semb Wever created CASSANDRA-18655:
----------------------------------------------

             Summary: Unfinalise AbstractVirtualTable.select(..) for downstream 
patches
                 Key: CASSANDRA-18655
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18655
             Project: Cassandra
          Issue Type: Task
          Components: Feature/Virtual Tables
            Reporter: Michael Semb Wever
            Assignee: Michael Semb Wever


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 it 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 should be to permit downstream patches to 
experiment first, 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 emphasis their 
experimental/non-stable state and limited audience. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to