{"record":{"id":"88e66c38eb2123cb","repo":"hibernate/hibernate-orm","slug":"max-results-cannot-be-negative","errorCode":null,"errorMessage":"Max results cannot be negative","messagePattern":"Max results cannot be negative","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/query/internal/SelectionQueryImpl.java","lineNumber":433,"sourceCode":"\t\treturn this;\n\t}\n\n\t@Override\n\t@Nonnull\n\tpublic SelectionQueryImplementor<R> setFirstResult(int startPosition) {\n\t\tsession.checkOpen();\n\t\tif ( startPosition < 0 ) {\n\t\t\tthrow new IllegalArgumentException( \"First result cannot be negative\" );\n\t\t}\n\t\tqueryOptions.getLimit().setFirstRow( startPosition );\n\t\treturn this;\n\t}\n\n\t@Override\n\t@Nonnull\n\tpublic SelectionQueryImplementor<R> setMaxResults(int maxResults) {\n\t\tif ( maxResults < 0 ) {\n\t\t\tthrow new IllegalArgumentException( \"Max results cannot be negative\" );\n\t\t}\n\t\tsession.checkOpen();\n\t\tqueryOptions.getLimit().setMaxRows( maxResults );\n\t\treturn this;\n\t}\n\n\t@Override\n\tpublic SelectionQueryImplementor<R> setPage(Page page) {\n\t\tsetMaxResults( page.getMaxResults() );\n\t\tsetFirstResult( page.getFirstResult() );\n\t\treturn this;\n\t}\n\n\t@Override\n\t@Nullable\n\tpublic LockModeType getLockMode() {\n\t\tsession.checkOpen( false );\n\t\t//noinspection removal","sourceCodeStart":415,"sourceCodeEnd":451,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/query/internal/SelectionQueryImpl.java#L415-L451","documentation":"Error \"Max results cannot be negative\" thrown in hibernate/hibernate-orm.","triggerScenarios":"A negative pagination bound is set: Max results cannot be negative","commonSituations":"Calling setFirstResult()/setMaxResults() with a negative value.","solutions":["setMaxResults() was given a negative value. Pass a non-negative maximum (or leave it unset for unlimited)."],"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"}