chroma-core/chroma · error · ChromaValueError

transactional read token changed from log upper bound offset

Error message

transactional read token changed from log upper bound offset ${this.readToken} to ${actualReadToken}

What it means

Error "transactional read token changed from log upper bound offset ${this.readToken} to ${actualReadToken}" thrown in chroma-core/chroma.

Source

Thrown at clients/new-js/packages/chromadb/src/collection.ts:1646

  ): void {
    if (actualReadToken === null || actualReadToken === undefined) {
      throw new ChromaValueError(
        "transactional get response did not include an OCC read token",
      );
    }
    if (!Number.isSafeInteger(actualReadToken) || actualReadToken < 0) {
      throw new ChromaValueError(
        `transactional read token offset ${actualReadToken} is not a safe integer`,
      );
    }
    if (expectedReadToken !== null && expectedReadToken !== actualReadToken) {
      throw new ChromaValueError(
        "transactional read token changed from log upper bound offset " +
          `${expectedReadToken} to ${actualReadToken}`,
      );
    }
    if (this.readToken !== null && this.readToken !== actualReadToken) {
      throw new ChromaValueError(
        "transactional read token changed from log upper bound offset " +
          `${this.readToken} to ${actualReadToken}`,
      );
    }
  }

  private bufferWrite(
    operation: "add",
    ids: string[],
    payload: AddCollectionRecordsPayload,
  ): void;
  private bufferWrite(
    operation: "update",
    ids: string[],
    payload: UpdateCollectionRecordsPayload,
  ): void;
  private bufferWrite(
    operation: "upsert",

View on GitHub (pinned to aecdd12c8a)

When it happens

Trigger: Thrown at clients/new-js/packages/chromadb/src/collection.ts:1646 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of chroma-core/chroma@aecdd12c8a (2026-08-16). Data as JSON: /api/errors/55ab47a963fcdaca. Report an issue: GitHub.