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/70bd5359 Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/70bd5359 Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/70bd5359 Branch: refs/heads/1.0.x-branch Commit: 70bd5359d5fead47613d1008f1baa9232aa567c0 Parents: a814199 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:52:48 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/70bd5359/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);
