You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@storm.apache.org by "Tibor Kiss (JIRA)" <ji...@apache.org> on 2017/02/05 16:59:41 UTC

[jira] [Created] (STORM-2345) Type mismatch in ReadClusterState's ProfileAction processing Map

Tibor Kiss created STORM-2345:
---------------------------------

             Summary: Type mismatch in ReadClusterState's ProfileAction processing Map
                 Key: STORM-2345
                 URL: https://issues.apache.org/jira/browse/STORM-2345
             Project: Apache Storm
          Issue Type: Bug
          Components: storm-core
    Affects Versions: 2.0.0, 1.0.3, 1.x
            Reporter: Tibor Kiss
            Assignee: Tibor Kiss
            Priority: Trivial


Discovered during reading STORM-2018's review comments:
{{ReadClusterState.run()}} method loads all the profiling requests from Zk then filters the ones designated to that particular node it runs on.  

The filtered profiling requests are stored in a Map: {{Map<Integer, Set<TopoProfileAction>>}} on a per Slot basis.
For some reason the TCP Port is serialized as i64/Long in NodeInfo, which is later used as a key in the Map.

The Map.put is converted properly to Integer, but the Map.get does not, causing the lookups to report a miss in the {{filtered}} Map.

This could cause TopoProfileActions ignored if one would send multiple TopoProfileActions through Zk. 
I don't think that could normally happen (using the UI), but the fix is trivial.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)