hibernate/hibernate-orm · error · LiteralNumberFormatException

not a byte: {hexText}

Error message

not a byte: {hexText}

What it means

Error "not a byte: {hexText}" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/query/hql/internal/SemanticQueryBuilder.java:4051

			default -> throw new ParsingException( "Unexpected terminal node [" + text + "]" );
		};
	}

	@Override
	public Object visitBinaryLiteral(HqlParser.BinaryLiteralContext ctx) {
		final var firstNode = (TerminalNode) ctx.getChild( 0 );
		if ( firstNode.getSymbol().getType() == HqlParser.BINARY_LITERAL ) {
			return binaryLiteral( firstNode.getText() );
		}
		else {
			final var text = new StringBuilder( "x'" );
			final int size = ctx.getChildCount();
			for ( int i = 0; i < size; i++ ) {
				final var hex = (TerminalNode) ctx.getChild( i );
				if ( hex.getSymbol().getType() == HqlParser.HEX_LITERAL ) {
					final String hexText = hex.getText();
					if ( hexText.length() != 4 ) {
						throw new LiteralNumberFormatException( "not a byte: " + hexText );
					}
					text.append( hexText, 2, hexText.length() );
				}
			}
			return binaryLiteral( text.append( "'" ).toString() );
		}
	}

	@Override
	public Object visitArrayLiteral(HqlParser.ArrayLiteralContext ctx) {
		final var expressionContexts = ctx.expression();
		final int count = expressionContexts.size();
		final List<SqmTypedNode<?>> arguments = new ArrayList<>( count );
		for ( var expressionContext : expressionContexts ) {
			arguments.add( (SqmTypedNode<?>) expressionContext.accept( this ) );
		}
		return getFunctionDescriptor( "array" ).generateSqmExpression(
				arguments,

View on GitHub (pinned to fad1729dce)

Solutions

  1. The binary/hex literal is not a valid byte value. Ensure the hexadecimal text in the literal contains an even number of valid hex digits representing byte values.

When it happens

Trigger: A hexadecimal literal contains a value outside the byte range: not a byte: <value>

Common situations: HQL binary/hex literals containing byte values that cannot be parsed.


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