hibernate/hibernate-orm · error · HibernateException

Unknown discriminator value for {}: {}

Error message

Unknown discriminator value for {}: {}

What it means

Error "Unknown discriminator value for {}: {}" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/UnifiedAnyDiscriminatorConverter.java:125

					return enumMatch;
				}
			}

			if ( implicitValueStrategy != null ) {
				final var entityMapping =
						implicitValueStrategy.toEntityMapping( relationalValue,
								discriminatorRole, mappingMetamodel );
				if ( entityMapping != null ) {
					return register( DiscriminatorValue.of( relationalValue ), entityMapping );
				}
			}

			final var nonNullMatch = detailsByValue.get( NOT_NULL );
			if ( nonNullMatch != null ) {
				return nonNullMatch;
			}

			throw new HibernateException(
					"Unknown discriminator value for " + discriminatorRole.getFullPath() + ": " + relationalValue );
		}
	}

	private Object enumValue(Enum<?> relationalEnum) {
		final var relationalJavaType = getRelationalJavaType();
		if ( relationalJavaType instanceof StringJavaType ) {
			return relationalEnum.name();
		}
		else if ( relationalJavaType instanceof CharacterJavaType ) {
			return relationalEnum.name().charAt( 0 );
		}
		else {
			return relationalEnum.ordinal();
		}
	}

	@Override

View on GitHub (pinned to fad1729dce)

Solutions

  1. Register all discriminator values with their entity names on the any-mapping; fix stored values that match no registered discriminator.

When it happens

Trigger: Thrown when a discriminator value read for an @Any association has no matching registered entity mapping.

Common situations: See trigger scenarios.


AI-assisted analysis of hibernate/hibernate-orm@fad1729dce (2026-08-22). Data as JSON: /api/errors/d35f411a56e991bc. Report an issue: GitHub.