{"record":{"id":"9952943e99588c0f","repo":"hibernate/hibernate-orm","slug":"registering-lock-modes-should-only-be-done-for-res","errorCode":null,"errorMessage":"Registering lock modes should only be done for result set mappings","messagePattern":"Registering lock modes should only be done for result set mappings","errorType":"exception","errorClass":"UnsupportedOperationException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/loader/ast/internal/LoaderSqlAstCreationState.java","lineNumber":177,"sourceCode":"\n\t@Override\n\tpublic SqlAliasBaseGenerator getSqlAliasBaseGenerator() {\n\t\treturn sqlAliasBaseManager;\n\t}\n\n\t@Override\n\tpublic LoadQueryInfluencers getLoadQueryInfluencers() {\n\t\treturn loadQueryInfluencers;\n\t}\n\n\t@Override\n\tpublic boolean applyOnlyLoadByKeyFilters() {\n\t\treturn true;\n\t}\n\n\t@Override\n\tpublic void registerLockMode(String identificationVariable, LockMode explicitLockMode) {\n\t\tthrow new UnsupportedOperationException( \"Registering lock modes should only be done for result set mappings\" );\n\t}\n\n\t@Override\n\tpublic ImmutableFetchList visitFetches(FetchParent fetchParent) {\n\t\treturn fetchProcessor.visitFetches( fetchParent, this );\n\t}\n\n\t@Override\n\tpublic <R> R withNestedFetchParent(FetchParent fetchParent, Function<FetchParent, R> action) {\n\t\tfinal var nestingFetchParent = processingState.getNestingFetchParent();\n\t\tprocessingState.setNestingFetchParent( fetchParent );\n\t\tfinal R result = action.apply( fetchParent );\n\t\tprocessingState.setNestingFetchParent( nestingFetchParent );\n\t\treturn result;\n\t}\n\n\t@Override\n\tpublic boolean isResolvingCircularFetch() {","sourceCodeStart":159,"sourceCodeEnd":195,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/loader/ast/internal/LoaderSqlAstCreationState.java#L159-L195","documentation":"Error \"Registering lock modes should only be done for result set mappings\" thrown in hibernate/hibernate-orm.","triggerScenarios":"Thrown at hibernate-core/src/main/java/org/hibernate/loader/ast/internal/LoaderSqlAstCreationState.java:177 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Only apply lock modes on result set mappings, not on scalar/other result types; adjust the native query lock mode registration."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fad1729dce015f908198d57a8d80274a30f905a5","analyzedAt":"2026-08-22T04:13:57.527Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}