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

ASF GitHub Bot commented on DRILL-4275:
---------------------------------------

GitHub user hnfgns opened a pull request:

    https://github.com/apache/drill/pull/374

    DRILL-4275: create TransientStore for short-lived objects; refactor 
PersistentStore to introduce pagination mechanism

    ps: removed PR#395 mistakenly so starting over.
    
    collections/
        introducing immutable entry
        
    coord/ClusterCoordinator
        add a factory method to create transient store
        
    coord/store
        introduce transient store and other classes around: factory, config, 
event, event type
        introduce base transient store implementation
        
    coord/zk
        introducing path utils for zk
        introducing general purpose zk client, unit tested
        complete rewrite of ZkPersistentStore
        complete rewrite of ZkEphemeralStore, unit tested
        introducing event dispatcher used by ZkEphemeralStore -- externalized 
for unit testing, unit tested
    
    coord/local/MapBackedStore
        introduces a local, map backed transient store
    
    coord/*
        updates to adapt new subclasses
        
    serialization/ (both transient & persistent store uses this package)
        introducing instance serializer
        introducing two concrete implementations: proto and jackson serializers
    
    all of PersistentStore subclasses
        implements new pagination logic
        
    java-exec/pom.xml
        adds curator-test dependency for unit tests
        
    server/
        update so that transient store is acquired, properly closed.
    
    */
        misc renamings to reflect class name changes, to remove unneeded import
        misc unit test fixes
        misc minor clean-ups

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/hnfgns/incubator-drill DRILL-4275

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/drill/pull/374.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #374
    
----
commit e077a2d6ba59a6abfe526bd8f38259d3959be5a7
Author: Hanifi Gunes <[email protected]>
Date:   2016-01-15T01:06:21Z

    DRILL-4275: create TransientStore for short-lived objects; refactor 
PersistentStore to introduce pagination mechanism

----


> Refactor e/pstore interfaces and their factories to provide a unified 
> mechanism to access stores
> ------------------------------------------------------------------------------------------------
>
>                 Key: DRILL-4275
>                 URL: https://issues.apache.org/jira/browse/DRILL-4275
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Execution - Flow
>            Reporter: Hanifi Gunes
>            Assignee: Deneche A. Hakim
>
> We rely on E/PStore interfaces to persist data. Even though E/PStore stands 
> for Ephemeral and Persistent stores respectively, the current design for 
> EStore does not extend the interface/functionality of PStore at all, which 
> hints abstraction for EStore is redundant. This issue proposes a new unified 
> Store interface replacing the old E/PStore that exposes an additional method 
> that report persistence level as follows:
> {code:title=Store interface}
> interface Store<V> {
>   StoreMode getMode();
>   V get(String key);
>   ...
> }
> enum StoreMode {
>   EPHEMERAL,
>   PERSISTENT,
>   ...
> }
> {code}
> The new design brings in less redundancy, more centralized code, ease to 
> reason and maintain.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to