apache/beam · error

Encountered a type that is not currently supported by…

Error message

Encountered a type that is not currently supported by RowCoder: ${JSON.stringify(t)}

What it means

The fall-through guard at the end of getNonNullCoderFromType: the type info object matched none of the recognized oneof arms (atomicType, arrayType, rowType, logicalType, and the not-yet-implemented iterableType/mapType). The full serialized type is included in the message; the input at fault is the entire type descriptor being unsupported by this RowCoder implementation.

Solutions

  1. Read the JSON in the message to see which type kind (e.g. iterableType or mapType) you used; this RowCoder currently does not support it, so replace it with a supported type such as arrayType.
  2. Update the TypeScript SDK to a version that implements the missing type kind, if one exists.
  3. Restructure the pipeline to avoid coders for unsupported types (e.g. encode maps as arrays of rows).
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at sdks/typescript/src/apache_beam/coders/row_coder.ts:313 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of apache/beam@12126d8942 (2026-09-13). Data as JSON: /api/errors/c53b1fbfe91d591d. Report an issue: GitHub.

Appendix: source

Thrown at sdks/typescript/src/apache_beam/coders/row_coder.ts:313

          return {
            encode: (element: any, writer: Writer, context: Context) =>
              reprCoder.encode(
                logicalTypeInfo.toRepr(element),
                writer,
                context,
              ),
            decode: (reader: Reader, context: Context) =>
              logicalTypeInfo.fromRepr(reprCoder.decode(reader, context)),
            toProto: (pipelineContext: ProtoContext) => {
              throw new Error("Ephemeral coder.");
            },
          };
        } else {
          throw new Error(`Unknown logical type: ${typeInfo.logicalType.urn}`);
        }
        break;
      default:
        throw new Error(
          `Encountered a type that is not currently supported by RowCoder: ${JSON.stringify(
            t,
          )}`,
        );
    }
  }

  static fromSchema(schema: Schema): RowCoder {
    return new RowCoder(schema);
  }

  static fromJSON(obj: any): RowCoder {
    return new RowCoder(RowCoder.inferSchemaOfJSON(obj));
  }

  constructor(rawSchema: Schema | Uint8Array) {
    const schema: Schema =
      rawSchema instanceof Uint8Array

View on GitHub (pinned to 12126d8942)