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

ASF GitHub Bot commented on STORM-1886:
---------------------------------------

Github user arunmahadevan commented on a diff in the pull request:

    https://github.com/apache/storm/pull/1470#discussion_r69395744
  
    --- Diff: 
external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java
 ---
    @@ -161,7 +176,11 @@ public void prepareCommit(long txid) {
                 commands = jedisContainer.getInstance();
                 if (commands.exists(prepareNamespace)) {
                     LOG.debug("Prepared txn already exists, will merge", txid);
    -                pendingPrepare.putAll(pendingCommit);
    +                for (Map.Entry<String, String> e: 
pendingCommit.entrySet()) {
    +                    if (!pendingPrepare.containsKey(e.getKey())) {
    +                        pendingPrepare.put(e.getKey(), e.getValue());
    +                    }
    +                }
                 }
                 if (!pendingPrepare.isEmpty()) {
                     commands.hmset(prepareNamespace, pendingPrepare);
    --- End diff --
    
    Sure


> Extend KeyValueState interface with delete method
> -------------------------------------------------
>
>                 Key: STORM-1886
>                 URL: https://issues.apache.org/jira/browse/STORM-1886
>             Project: Apache Storm
>          Issue Type: Improvement
>            Reporter: Balazs Kossovics
>
> Even if the implementation of checkpointing only uses the get/put methods of 
> the KeyValueState interface, the existance of a delete method could be really 
> useful in the general case.
> I made a first implementation, what do you think about?



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

Reply via email to