code: func (c *connection) Metadata(req *proto.MetadataReq) (*proto.MetadataResp, error) {
  	b, err := c.sendRequest(req)
  	if err != nil {
  		return nil, err
  	}
  	return proto.ReadVersionedMetadataResp(bytes.NewReader(b), req.GetVersion())
  }
docs: // Metadata sends given metadata request to kafka node and returns related
  // metadata response.
  // Calling this method on closed connection will always return ErrClosed.