vitessio/vitess · error

GetCellInfo(%s) failed: %w

Error message

GetCellInfo(%s) failed: %w

What it means

The per-cell GetCellInfo vtctld RPC failed for one cell while others may succeed. The error is recorded with the cell name. Typical causes are vtctld-side failures reading that cell's topology record or the cell's topology backend being down.

Source

Thrown at go/vt/vtadmin/cluster/cluster.go:1109

		rec concurrency.AllErrorRecorder
	)

	for _, name := range names {
		wg.Add(1)
		go func(name string) {
			defer wg.Done()

			if err := c.topoReadPool.Acquire(ctx); err != nil {
				rec.RecordError(fmt.Errorf("GetCellInfo(%s) failed to acquire topoReadPool: %w", name, err))
				return
			}
			resp, err := c.Vtctld.GetCellInfo(ctx, &vtctldatapb.GetCellInfoRequest{
				Cell: name,
			})
			c.topoReadPool.Release()

			if err != nil {
				rec.RecordError(fmt.Errorf("GetCellInfo(%s) failed: %w", name, err))
				return
			}

			m.Lock()
			defer m.Unlock()
			infos = append(infos, &vtadminpb.ClusterCellInfo{
				Cluster:  cpb,
				Name:     name,
				CellInfo: resp.CellInfo,
			})
		}(name)
	}

	wg.Wait()
	if rec.HasErrors() {
		return nil, rec.Error()
	}

View on GitHub (pinned to 01a25a7d17)

Solutions

  1. Inspect the wrapped cause and the named cell's topology record
  2. Verify the cell's topology backend (etcd/zk) is healthy
  3. Remove or fix stale cell records
  4. Retry; if persistent, investigate vtctld logs for that cell
Defensive patterns

Strategy: try-catch

Validate before calling

// check the cell record exists before fetching details
names, err := vtctldClient.GetCellInfoNames(ctx, &vtctldatapb.GetCellInfoNamesRequest{})
if err != nil { return err }
for _, n := range names.Names {
    if n == cell { /* ok */ }
}

Try / catch

cells, err := cluster.GetCellInfos(ctx, req)
if err != nil {
    var missing string
    if strings.Contains(err.Error(), "GetCellInfo(") {
        // parse cell name from message; degrade gracefully (partial results) or retry
    }
    return err
}

Prevention

When it happens

Trigger: c.Vtctld.GetCellInfo RPC error for a specific cell — cell record missing/malformed in topology, that cell's etcd/zk unreachable, or vtctld error.

Common situations: A recently added cell with incomplete topology records; regional topology outage; cell decommissioned but still referenced; network partition to one datacenter.

Related errors


AI-assisted analysis of vitessio/vitess@01a25a7d17 (2026-09-01). Data as JSON: /api/errors/247c4fd6afe71bab. Report an issue: GitHub.