hibernate/hibernate-orm · error · SessionException
Session was created in read-only mode
Error message
Session was created in read-only mode
What it means
Error "Session was created in read-only mode" thrown in hibernate/hibernate-orm.
Source
Thrown at hibernate-core/src/main/java/org/hibernate/internal/SessionImpl.java:1928
return true;
}
@Override
@Nonnull
public EventSource asEventSource() {
return this;
}
@Override
public boolean isDefaultReadOnly() {
return persistenceContext.isDefaultReadOnly();
}
@Override
public void setDefaultReadOnly(boolean defaultReadOnly) {
checkSessionReentrancy();
if ( !defaultReadOnly && isReadOnly() ) {
throw new SessionException( "Session was created in read-only mode" );
}
persistenceContext.setDefaultReadOnly( defaultReadOnly );
}
@Override
public boolean isReadOnly(@Nonnull Object entityOrProxy) {
checkOpen();
// checkTransactionSynchStatus();
return persistenceContext.isReadOnly( entityOrProxy );
}
@Override
public void setReadOnly(@Nonnull Object entity, boolean readOnly) {
checkOpen();
// checkTransactionSynchStatus();
persistenceContext.setReadOnly( entity, readOnly );
}
View on GitHub (pinned to fad1729dce)
Solutions
- Do not perform write operations on a read-only session; obtain a normal session for mutations.
- If the read-only flag was set by a @Transactional(readOnly=true), open a non-read-only transaction for the write.
When it happens
Trigger: Thrown at hibernate-core/src/main/java/org/hibernate/internal/SessionImpl.java:1928 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/f2f0edad9c2c6a38.
Report an issue: GitHub.