{"record":{"id":"d78c8c4af9e16486","repo":"hibernate/hibernate-orm","slug":"unsupported-aggregate-sql-type","errorCode":null,"errorMessage":"Unsupported aggregate SQL type: {}","messagePattern":"Unsupported aggregate SQL type: (.+?)","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/dialect/aggregate/HANAAggregateSupport.java","lineNumber":210,"sourceCode":"\t\t\t\t\t\t\t\t\tcaseExpression + \"'<Collection>'||xmlextract(\" + xmlParentPartExpression + columnExpression + \"/*')||'</Collection>' end\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\tcase UUID:\n\t\t\t\t\t\tif ( SqlTypes.isBinaryType( column.getJdbcMapping().getJdbcType().getDdlTypeCode() ) ) {\n\t\t\t\t\t\t\treturn template.replace(\n\t\t\t\t\t\t\t\t\tplaceholder,\n\t\t\t\t\t\t\t\t\tcaseExpression + \"hextobin(replace(xmlextractvalue(\" + xmlParentPartExpression + columnExpression + \"'),'-','')) end\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// Fall-through intended\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn template.replace(\n\t\t\t\t\t\t\t\tplaceholder,\n\t\t\t\t\t\t\t\tcaseExpression + \"cast(xmlextractvalue(\" + xmlParentPartExpression + columnExpression + \"') as \" + xmlValueReturningType( column, getCastTypeName( column, typeConfiguration ) ) + \") end\"\n\t\t\t\t\t\t);\n\t\t\t\t}\n\t\t}\n\t\tthrow new IllegalArgumentException( \"Unsupported aggregate SQL type: \" + aggregateColumnTypeCode );\n\t}\n\n\tprivate static String determineJsonParentPartExpression(String aggregateParentReadExpression) {\n\t\tfinal String parentPartExpression;\n\t\tif ( aggregateParentReadExpression.startsWith( JSON_QUERY_START ) && aggregateParentReadExpression.endsWith( JSON_QUERY_END ) ) {\n\t\t\tparentPartExpression = aggregateParentReadExpression.substring( JSON_QUERY_START.length(), aggregateParentReadExpression.length() - JSON_QUERY_END.length() ) + \".\";\n\t\t}\n\t\telse {\n\t\t\tparentPartExpression = aggregateParentReadExpression + \",'$.\";\n\t\t}\n\t\treturn parentPartExpression;\n\t}\n\n\tprivate static String determineXmlParentPartExpression(String aggregateParentReadExpression) {\n\t\tfinal String parentPartExpression;\n\t\tif ( aggregateParentReadExpression.startsWith( XML_EXTRACT_START ) && aggregateParentReadExpression.endsWith( XML_EXTRACT_END ) ) {\n\t\t\tparentPartExpression = aggregateParentReadExpression.substring( XML_EXTRACT_START.length(), aggregateParentReadExpression.length() - XML_EXTRACT_END.length() ) + \"/\";\n\t\t}","sourceCodeStart":192,"sourceCodeEnd":228,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/dialect/aggregate/HANAAggregateSupport.java#L192-L228","documentation":"Error \"Unsupported aggregate SQL type: {}\" thrown in hibernate/hibernate-orm.","triggerScenarios":"Triggered when the application calls a Hibernate dialect feature that the configured database dialect cannot provide: Unsupported aggregate SQL type (HANA).","commonSituations":"Common when running against a database whose dialect lacks this capability, when a mapping or HQL/Criteria query requests unsupported functionality, or when the wrong dialect is configured for the database in use. Error: Unsupported aggregate SQL type (HANA).","solutions":["Map the aggregate column with a supported SQL type.","Avoid the unsupported aggregate type on HANA."],"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"}