[
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)