I am implementing a simple automated monitoring for our topologies in
node.js. I compiled the storm.thrift file of the 0.8.0 branch (we are
using storm 0.8.0 in production). While "getClusterInfo" works fine,
"getTopologyInfo" with an id provided produces the following error:
/var/node/node_modules/thrift/lib/thrift/connection.js:90
throw e;
^
TypeError: Cannot read property 'length' of undefined
at Object.ExecutorStats.read
(/var/node/gen-nodejs/storm_types.js:2587:31)
at Object.ExecutorSummary.read
(/var/node/gen-nodejs/storm_types.js:2882:20)
at Object.TopologyInfo.read
(/var/node/gen-nodejs/storm_types.js:3009:19)
at Object.Nimbus_getTopologyInfo_result.read
(/var/node/gen-nodejs/Nimbus.js:1387:22)
at Object.NimbusClient.recv_getTopologyInfo
(/var/node/gen-nodejs/Nimbus.js:2233:10)
at exports.Connection
(/var/node/node_modules/thrift/lib/thrift/connection.js:83:37)
at Socket.TFramedTransport.receiver
(/var/node/node_modules/thrift/lib/thrift/transport.js:69:9)
at Socket.EventEmitter.emit (events.js:96:17)
at TCP.onread (net.js:396:14)
This is a console.log() of the affected object in storm_types.js line 2587:
{ trans:
{ inBuf: <Buffer 80 01 00 02 00 00 00 0f 67 65 74 54 6f 70 6f 6c 6f
67 79 49 6e 66 6f 00 00 00 01 0c 00 00 0b 00 01 00 00 00 17 73 74 6f 63
6b 68 6f 75 73 65 2d 39 2d 31 ...>,
outBuffers: [],
outCount: 0,
readPos: 229,
onFlush: undefined },
strictRead: false,
strictWrite: true }
I am stuck here. Did anyone get the same error or has an idea for a
solution?
Best regards,
Thomas