{"record":{"id":"b40c7cb6384f17ee","repo":"hibernate/hibernate-orm","slug":"can-t-get-max-rows-value-from","errorCode":null,"errorMessage":"Can't get max rows value from: {}","messagePattern":"Can't get max rows value from: (.+?)","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/query/internal/SelectionQueryImpl.java","lineNumber":1563,"sourceCode":"\t\t\t\treturn switch ( selectStatement.getFetchClauseType() ) {\n\t\t\t\t\tcase ROWS_ONLY, ROWS_WITH_TIES -> fetchValue.intValue();\n\t\t\t\t\tcase PERCENT_ONLY, PERCENT_WITH_TIES ->\n\t\t\t\t\t\t\t(int) Math.ceil( (((double) size) * fetchValue.doubleValue()) / 100d );\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\n\tprivate Number fetchValue(JpaExpression<Number> expression) {\n\t\tif ( expression instanceof SqmLiteral<Number> numericLiteral ) {\n\t\t\treturn numericLiteral.getLiteralValue();\n\t\t}\n\t\telse if ( expression instanceof SqmParameter<Number> numericParameter ) {\n\t\t\treturn getParameterValue( numericParameter );\n\t\t}\n\t\telse {\n\t\t\tthrow new IllegalArgumentException( \"Can't get max rows value from: \" + expression );\n\t\t}\n\t}\n\n\n\t// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\t// Deprecations\n\n\t@Override @Deprecated @SuppressWarnings(\"deprecation\")\n\t@Nonnull\n\tpublic SelectionQueryImplementor<R> setParameter(@Nonnull String name, @Nullable Instant value, @Nonnull TemporalType temporalType) {\n\t\tsuper.setParameter( name, value, temporalType );\n\t\treturn this;\n\t}\n\n\t@Override @Deprecated @SuppressWarnings(\"deprecation\")\n\t@Nonnull\n\tpublic SelectionQueryImplementor<R> setParameter(int position, @Nullable Instant value, @Nonnull TemporalType temporalType) {\n\t\tsuper.setParameter( position, value, temporalType );","sourceCodeStart":1545,"sourceCodeEnd":1581,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/query/internal/SelectionQueryImpl.java#L1545-L1581","documentation":"Error \"Can't get max rows value from: {}\" thrown in hibernate/hibernate-orm.","triggerScenarios":"A non-integer value is used where an integer literal is required: Can't get max rows value from: <value>","commonSituations":"Passing non-numeric limit/offset expressions or hints that must be integer literals.","solutions":["The max-rows value could not be read from the given object. Pass an integer-compatible value."],"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-22T14:17:55.899Z"}