[ 
https://issues.apache.org/jira/browse/CASSANDRA-8440?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

C. Scott Andreas updated CASSANDRA-8440:
----------------------------------------
    Component/s: Local Write-Read Paths

> Refactor StorageProxy
> ---------------------
>
>                 Key: CASSANDRA-8440
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8440
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local Write-Read Paths
>            Reporter: Joshua McKenzie
>            Priority: Major
>             Fix For: 4.x
>
>
> The StorageProxy is currently a monolithic singleton with a collection of 
> static methods.  This ticket will track a multi-phase effort to refactor this 
> into appropriate subclasses, convert the internals to asynchronous 
> operations, and eventually change the API to being async.
>  
> See CASSANDRA-7392 for an example of a feature that this change would help 
> facilitate.
> Broken down into 5 phases:
> * Phase 1: Un-singleton and Break static methods down into classes
> * Phase 2: Convert StorageProxy classes to futures, keep internal synchronous 
> processing so interface doesn't change
> * Phase 3: Track count and limits on internal messages within StorageProxy
> * Phase 4: Push async interface upstream
> * Phase 5: Profile garbage generation from StorageProxy changes and consider 
> object pooling
> Granularity with the breakdown above is to make reviews less painful and make 
> it easier to add unit-testing for this component as we go.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to