hibernate/hibernate-orm · error · UnsupportedOperationException

'{className}' does not yet support 'timestampadd()'

Error message

'{className}' does not yet support 'timestampadd()'

What it means

Error "'{className}' does not yet support 'timestampadd()'" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/dialect/Dialect.java:1814

	 */
	@SuppressWarnings("deprecation")
	public String timestampdiffPattern(TemporalUnit unit, TemporalType fromTemporalType, TemporalType toTemporalType) {
		throw new UnsupportedOperationException( "'" + getClass().getName() + "' does not support 'timestampdiff()'" );
	}

	/**
	 * Obtain a pattern for the SQL equivalent to a
	 * {@code timestampadd()} function call. The resulting
	 * pattern must contain ?1, ?2, and ?3 placeholders
	 * for the arguments.
	 *
	 * @param unit The unit to add to the temporal
	 * @param temporalType The type of the temporal
	 * @param intervalType The type of interval to add or null if it's not a native interval
	 */
	@SuppressWarnings("deprecation")
	public String timestampaddPattern(TemporalUnit unit, TemporalType temporalType, IntervalType intervalType) {
		throw new UnsupportedOperationException( "'" + getClass().getName() + "' does not yet support 'timestampadd()'" );
	}

	/**
	 * Do the given JDBC type codes, as defined in {@link Types} represent
	 * essentially the same type in this dialect of SQL?
	 * <p>
	 * The default implementation treats {@link Types#NUMERIC NUMERIC} and
	 * {@link Types#DECIMAL DECIMAL} as the same type, and
	 * {@link Types#FLOAT FLOAT}, {@link Types#REAL REAL}, and
	 * {@link Types#DOUBLE DOUBLE} as essentially the same type, since the
	 * ANSI SQL specification fails to meaningfully distinguish them.
	 * <p>
	 * The default implementation also treats {@link Types#VARCHAR VARCHAR},
	 * {@link Types#NVARCHAR NVARCHAR}, {@link Types#LONGVARCHAR LONGVARCHAR},
	 * and {@link Types#LONGNVARCHAR LONGNVARCHAR} as the same type, and
	 * {@link Types#VARBINARY BINARY} and
	 * {@link Types#LONGVARBINARY LONGVARBINARY} as the same type, since
	 * Hibernate doesn't really differentiate these types.

View on GitHub (pinned to fad1729dce)

Solutions

  1. Use a dialect that supports timestampadd(), or rewrite the query with a supported function/native SQL for this database.

Example fix

Use a dialect that supports timestampadd(), or rewrite the query with a supported function/native SQL for this database.

When it happens

Trigger: A dialect-specific function or stream operation is used that the current database dialect does not support.

Common situations: Calling timestampadd()/timestampdiff() on dialects lacking support, or LOB stream handling hitting IO failures.


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