[ 
https://issues.apache.org/jira/browse/CASSANDRA-17044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17431165#comment-17431165
 ] 

Benedict Elliott Smith commented on CASSANDRA-17044:
----------------------------------------------------

bq. I don't have any opinion on the new Future implementation yet apart from 
that it should be renamed so that it is easily distinguishable from the native 
Java's Future and Netty's Future.

As you mention, there are already two interfaces called {{Future}}, and these 
are generally forbidden* from being used directly so there should be no 
confusion. This {{Future}} implements both of these forbidden interfaces, as 
well as Guava's {{ListenableFuture}}.

The purpose of this new {{Future}}, besides supporting simulation, was 
specifically to standardise the very divergent approaches across the codebase, 
and this consistency is now enforced by a linter to ensure we do not diverge 
again.

\* I think Netty's isn't globally forbidden, due to needing it in places for 
Netty integration, but I will file a patch to restrict its use to the minimal 
set of classes to further restrict any potential for confusion.


> Refactor schema management to allow for schema source pluggability
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-17044
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17044
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Cluster/Schema
>            Reporter: Jacek Lewandowski
>            Assignee: Jacek Lewandowski
>            Priority: Normal
>
> The idea is decompose `Schema` into separate entities responsible for 
> different things. In particular extract what is related to schema storage and 
> synchronization into a separate class so that it is possible to create an 
> extension point there and store schema in a different way than 
> `system_schema` keyspace, for example in etcd. 
> This would also simplify the logic and reduce the number of special cases, 
> make all the things more testable and the logic of internal classes 
> encapsulated.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to