Fix STORM-1884 Signed-off-by: P. Taylor Goetz <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/storm/repo Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/5cccb910 Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/5cccb910 Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/5cccb910 Branch: refs/heads/1.x-branch Commit: 5cccb9102a2000cacd1ff790ce9dc775acd78540 Parents: 48eb428 Author: Balazs Kossovics <[email protected]> Authored: Mon Jun 6 17:04:27 2016 +0200 Committer: P. Taylor Goetz <[email protected]> Committed: Thu Jun 9 16:51:49 2016 -0400 ---------------------------------------------------------------------- .../java/org/apache/storm/redis/state/RedisKeyValueState.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/storm/blob/5cccb910/external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java ---------------------------------------------------------------------- diff --git a/external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java b/external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java index 6071757..6d690d4 100644 --- a/external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java +++ b/external/storm-redis/src/main/java/org/apache/storm/redis/state/RedisKeyValueState.java @@ -161,7 +161,11 @@ public class RedisKeyValueState<K, V> implements KeyValueState<K, V> { 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);
