Ethanlm commented on pull request #3337:
URL: https://github.com/apache/storm/pull/3337#issuecomment-694939304


   (1) For old clients, I am thinking of users using old storm client to submit 
topologies to upgraded cluster. 
   
   (2) For old python code, I am thinking of 
     * topologies depending on older storm version (with older storm python 
module)
     * older version of python client connecting to upgraded storm cluster
   
   This can't be tested on unit tests.
   
   (3) By server-side plugin, I meant plugins that storm users can implement 
for their cluster, for example, `nimbus.topology.validator`. These are couple 
of server-side plugins that users can implement. If those plugins invokes 
`get_msg`, it will not continue to work on upgraded cluster.
   
   (4) The topology code depends on `storm-client.jar` as provided dependency. 
But when it is running on the cluster, it uses the cluster provided 
`storm-client.jar`. So a possible issue is that in the topology code, it 
invokes `get_msg` somewhere (since it depends on older `storm-client.jar`), but 
when it is running on upgraded cluster, `storm-client.jar` doesn't have 
`get_msg` method, and hence NoSuchMethod error.  
   
   Theoretically (3-4) could happen. But what I am currently not sure is that 
if anyone would implement a server-side plugin that invokes `get_msg` somewhere 
in their  code or if anyone would have their topology invokes `get_msg` 
somewhere in their bolt/spout?
   
   I am more confident with it if we can have comprehensive tests. But this is 
not urgent. And I will also try to find some time to do some tests too.  Thanks


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to