cube-js/cube · error · UserError

'${cubeAndName[1]}' not found for path '${path}'

Error message

'${cubeAndName[1]}' not found for path '${path}'

What it means

The final member-resolution UserError in CubeEvaluator.byPath: the cube and its type members collection exist, but the specific member name (cubeAndName[1]) is not among them. This is the common 'member not found' case — a query or join references a measure/dimension/segment that does not exist on that cube (typo, wrong cube, or member removed from the schema). The input at fault is a path whose member name has no definition in the cube.

Source

Thrown at packages/cubejs-schema-compiler/src/compiler/CubeEvaluator.ts:1092

    if (!path) {
      throw new Error('Path can\'t be undefined');
    }

    const cubeAndName = Array.isArray(path) ? path : path.split('.');
    const cube = this.evaluatedCubes[cubeAndName[0]];
    if (cube === undefined) {
      throw new UserError(`Cube '${cubeAndName[0]}' not found for path '${path}'`);
    }

    const typeMembers = cube[type];
    if (typeMembers === undefined) {
      throw new UserError(`${type} not defined for path '${path}'`);
    }

    const member = typeMembers[cubeAndName[1]];
    if (member === undefined) {
      throw new UserError(`'${cubeAndName[1]}' not found for path '${path}'`);
    }

    return member as EvaluatedCube[T][string];
  }

  public parsePath(type: 'measures' | 'dimensions' | 'segments' | 'preAggregations', path: string): string[] {
    // Should throw UserError in case of parse error
    this.byPath(type, path);
    return path.split('.');
  }

  public isRbacEnabledForCube(cube: any): boolean {
    return cube.accessPolicy?.length;
  }

  public isRbacEnabled(): boolean {
    if (this.isRbacEnabledCache === null) {
      this.isRbacEnabledCache = this.cubeNames().some(

View on GitHub (pinned to 7d981676b3)

Solutions

  1. Correct the member name in the path — the cube exists but has no measure/dimension/segment with that name
  2. Check for typos, renamed members, or references to members removed from the data model
  3. If referencing another cube's member, use the fully qualified 'CubeName.memberName' path
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at packages/cubejs-schema-compiler/src/compiler/CubeEvaluator.ts:1092 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of cube-js/cube@7d981676b3 (2026-09-02). Data as JSON: /api/errors/74a2c86445c6d734. Report an issue: GitHub.