{"record":{"id":"9eb17e4cb3dfafc8","repo":"hibernate/hibernate-orm","slug":"fetch-was-already-defined-for-s-s-s","errorCode":null,"errorMessage":"Fetch was already defined for %s.%s : %s","messagePattern":"Fetch was already defined for (.+?)\\.(.+?) : (.+?)","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/query/results/internal/dynamic/AbstractFetchBuilderContainer.java","lineNumber":67,"sourceCode":"\t\treturn (T) this;\n\t}\n\n\t@Override\n\tpublic T addProperty(Fetchable fetchable, String... columnAliases) {\n\t\tfinal var fetchBuilder = addProperty( fetchable );\n\t\tArrayHelper.forEach( columnAliases, fetchBuilder::addColumnAlias );\n\t\treturn (T) this;\n\t}\n\n\t@Override\n\tpublic DynamicFetchBuilder addProperty(Fetchable fetchable) {\n\t\tif ( fetchBuilderMap == null ) {\n\t\t\tfetchBuilderMap = new HashMap<>();\n\t\t}\n\t\telse {\n\t\t\tfinal var existing = fetchBuilderMap.get( fetchable );\n\t\t\tif ( existing != null ) {\n\t\t\t\tthrow new IllegalArgumentException(\n\t\t\t\t\t\tString.format(\n\t\t\t\t\t\t\t\tLocale.ROOT,\n\t\t\t\t\t\t\t\t\"Fetch was already defined for %s.%s : %s\",\n\t\t\t\t\t\t\t\tgetPropertyBase(),\n\t\t\t\t\t\t\t\tfetchable,\n\t\t\t\t\t\t\t\texisting\n\t\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tfinal var fetchBuilder = new DynamicFetchBuilderStandard( fetchable\t);\n\t\tfetchBuilderMap.put( fetchable, fetchBuilder );\n\t\treturn fetchBuilder;\n\t}\n\n\t@Override\n\tpublic void addFetchBuilder(Fetchable fetchable, FetchBuilder fetchBuilder) {","sourceCodeStart":49,"sourceCodeEnd":85,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/query/results/internal/dynamic/AbstractFetchBuilderContainer.java#L49-L85","documentation":"Error \"Fetch was already defined for %s.%s : %s\" thrown in hibernate/hibernate-orm.","triggerScenarios":"A dynamic native-result mapping is built inconsistently: Fetch was already defined for <value>.<value> : <value>","commonSituations":"Defining the same fetch twice, fetching an unsupported type, or an instantiation mapping with no constructor arguments.","solutions":["A fetch for that attribute was already defined. Remove the duplicate fetch definition."],"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"}