Thanks Jun, done. I've created KAFKA-972 issue for that. Regards
On Thu, Jul 11, 2013 at 1:16 AM, Jun Rao <jun...@gmail.com> wrote: > That's actually not expected. We should only return live brokers to the > client. It seems that we never clear the live broker cache in the brokers. > This is a bug. Could you file a jira? > > Thanks, > > Jun > > > On Wed, Jul 10, 2013 at 8:52 AM, Vinicius Carvalho < > viniciusccarva...@gmail.com> wrote: > > > Hi there. Once again, I don't think I could get the docs on another > topic. > > > > So my nodejs client connects to the broker and the first thing it does is > > store the topic metadata: > > > > data received > > { > > "brokers": [ > > { > > "nodeId": 0, > > "host": "10.139.245.106", > > "port": 9092, > > "byteLength": 24 > > }, > > { > > "nodeId": 1, > > "host": "localhost", > > "port": 9093, > > "byteLength": 19 > > } > > ], > > "topicMetadata": [ > > { > > "topicErrorCode": 0, > > "topicName": "foozbar", > > "partitions": [ > > { > > "replicas": [ > > 0 > > ], > > "isr": [ > > 0 > > ], > > "partitionErrorCode": 0, > > "partitionId": 0, > > "leader": 0, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 1 > > ], > > "isr": [ > > 1 > > ], > > "partitionErrorCode": 0, > > "partitionId": 1, > > "leader": 1, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 0 > > ], > > "isr": [ > > 0 > > ], > > "partitionErrorCode": 0, > > "partitionId": 2, > > "leader": 0, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 1 > > ], > > "isr": [ > > 1 > > ], > > "partitionErrorCode": 0, > > "partitionId": 3, > > "leader": 1, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 0 > > ], > > "isr": [ > > 0 > > ], > > "partitionErrorCode": 0, > > "partitionId": 4, > > "leader": 0, > > "byteLength": 26 > > } > > ], > > "byteLength": 145 > > } > > ], > > "responseSize": 200, > > "correlationId": -1000 > > } > > > > Ok, so far so good. So I kill node 0 on purpose. Trying to simulate a > > broker failure, and then I fetch metadata again: > > > > data received > > { > > "brokers": [ > > { > > "nodeId": 0, > > "host": "10.139.245.106", > > "port": 9092, > > "byteLength": 24 > > }, > > { > > "nodeId": 1, > > "host": "localhost", > > "port": 9093, > > "byteLength": 19 > > } > > ], > > "topicMetadata": [ > > { > > "topicErrorCode": 0, > > "topicName": "foozbar", > > "partitions": [ > > { > > "replicas": [ > > 0 > > ], > > "isr": [], > > "partitionErrorCode": 5, > > "partitionId": 0, > > "leader": -1, > > "byteLength": 22 > > }, > > { > > "replicas": [ > > 1 > > ], > > "isr": [ > > 1 > > ], > > "partitionErrorCode": 0, > > "partitionId": 1, > > "leader": 1, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 0 > > ], > > "isr": [], > > "partitionErrorCode": 5, > > "partitionId": 2, > > "leader": -1, > > "byteLength": 22 > > }, > > { > > "replicas": [ > > 1 > > ], > > "isr": [ > > 1 > > ], > > "partitionErrorCode": 0, > > "partitionId": 3, > > "leader": 1, > > "byteLength": 26 > > }, > > { > > "replicas": [ > > 0 > > ], > > "isr": [], > > "partitionErrorCode": 5, > > "partitionId": 4, > > "leader": -1, > > "byteLength": 22 > > } > > ], > > "byteLength": 133 > > } > > ], > > "responseSize": 188, > > "correlationId": -1000 > > } > > > > Well, I can see from partition metadata that some partions have no leader > > (-1), but my problem is that I actually rely on the brokers list to > create > > a pool of connections. And even when the broker 0 is down, I still get it > > back from the metadata. Is this what is expected? I know it could be that > > brokers are only a list of all places where that topic could be found, > but > > in that case couldn't we at least have a flag indicating wether that > broker > > is online or not? > > > > Regards > > > > > > > > -- > > The intuitive mind is a sacred gift and the > > rational mind is a faithful servant. We have > > created a society that honors the servant and > > has forgotten the gift. > > > -- The intuitive mind is a sacred gift and the rational mind is a faithful servant. We have created a society that honors the servant and has forgotten the gift.