You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@storm.apache.org by "Dave Katten (JIRA)" <ji...@apache.org> on 2015/03/12 00:54:38 UTC
[jira] [Created] (STORM-703) RedisMapState with hash key can cause
network overload
Dave Katten created STORM-703:
---------------------------------
Summary: RedisMapState with hash key can cause network overload
Key: STORM-703
URL: https://issues.apache.org/jira/browse/STORM-703
Project: Apache Storm
Issue Type: Bug
Components: external
Affects Versions: 0.10.0
Reporter: Dave Katten
When RedisMapState is constructed to use a hash key (and store values under a hash in redis, rather than as key/value pairs in the top namespace), a multiGet actually requests ALL of the state in that hash, instead of only the keys in the batch.
As the size of the hash grows in redis, this becomes an inordinate amount of traffic, and can cause interfaces to fall over.
* Solution
Instead of calling jedis.hgetall(hash), call jedis.hmget(hash, stringKeys[]). Also, remove the buildValuesFromMap function, as it is no longer needed.
See PR#462 on github.
https://github.com/apache/storm/pull/462
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)