temporalio/temporal · error

%w: expected string got %T

Error message

%w: expected string got %T

What it means

Error "%w: expected string got %T" thrown in temporalio/temporal.

Source

Thrown at common/persistence/visibility/store/elasticsearch/visibility_store.go:1075

	combinedTypeMap := store.CombineTypeMaps(saTypeMap, chasmMapper)

	var (
		isValidType         bool
		memo                []byte
		memoEncoding        string
		allSearchAttributes map[string]any
	)
	record := &store.InternalExecutionInfo{}
	for fieldName, fieldValue := range sourceMap {
		switch fieldName {
		case sadefs.NamespaceID,
			sadefs.VisibilityTaskKey:
			// Ignore these fields.
			continue
		case sadefs.Memo:
			var memoStr string
			if memoStr, isValidType = fieldValue.(string); !isValidType {
				return nil, logParseError(fieldName, fieldValue, fmt.Errorf("%w: expected string got %T", errUnexpectedJSONFieldType, fieldValue), docID)
			}
			var err error
			if memo, err = base64.StdEncoding.DecodeString(memoStr); err != nil {
				return nil, logParseError(fieldName, memoStr[:10], err, docID)
			}
			continue
		case sadefs.MemoEncoding:
			if memoEncoding, isValidType = fieldValue.(string); !isValidType {
				return nil, logParseError(fieldName, fieldValue, fmt.Errorf("%w: expected string got %T", errUnexpectedJSONFieldType, fieldValue), docID)
			}
			continue
		}

		fieldType, err := combinedTypeMap.GetType(fieldName)
		if err != nil {
			// Silently ignore ErrInvalidName because it indicates an unknown field in an Elasticsearch document.
			if errors.Is(err, sadefs.ErrInvalidName) {
				continue

View on GitHub (pinned to bde624efd1)

When it happens

Trigger: Thrown at common/persistence/visibility/store/elasticsearch/visibility_store.go:1075 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of temporalio/temporal@bde624efd1 (2026-09-01). Data as JSON: /api/errors/afd770eced998a5a. Report an issue: GitHub.