hibernate/hibernate-orm · error · HibernateException
instance was not in a valid state
Error message
instance was not in a valid state
What it means
Error "instance was not in a valid state" thrown in hibernate/hibernate-orm.
Source
Thrown at hibernate-core/src/main/java/org/hibernate/engine/internal/EntityEntryImpl.java:433
return persister.isMutable()
&& status != READ_ONLY
&& ! ( status == DELETED && previousStatus == READ_ONLY );
}
@Override
public void forceLocked(Object entity, Object nextVersion) {
version = nextVersion;
final int versionProperty = persister.getVersionPropertyIndex();
loadedState[versionProperty] = version;
setLockMode( PESSIMISTIC_FORCE_INCREMENT );
persister.setValue( entity, versionProperty, nextVersion );
}
@Override
public boolean isReadOnly() {
final Status status = getStatus();
if ( status != MANAGED && status != READ_ONLY ) {
throw new HibernateException("instance was not in a valid state");
}
return status == READ_ONLY;
}
@Override
public boolean setReadOnly(boolean readOnly, Object entity) {
final boolean changed = readOnly != isReadOnly();
if ( changed ) {
if ( readOnly ) {
setStatus( READ_ONLY );
loadedState = null;
}
else if ( !persister.isMutable() ) {
throw new IllegalStateException( "Cannot make an entity of immutable type '"
+ persister.getEntityName() + "' modifiable" );
}
else {
setStatus( MANAGED );View on GitHub (pinned to fad1729dce)
Solutions
- Verify the entity lifecycle state before the operation (do not operate on detached/deleted entries)
- Ensure the session is open and the entity entry is in a valid Status for the requested transition
When it happens
Trigger: Thrown at hibernate-core/src/main/java/org/hibernate/engine/internal/EntityEntryImpl.java:433 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of hibernate/hibernate-orm@fad1729dce (2026-08-22).
Data as JSON: /api/errors/f2cd3341243b2b48.
Report an issue: GitHub.