{"record":{"id":"efb84504ce9151a7","repo":"prestodb/presto","slug":"parameter-limit-for-getallqueryinfo-must-be-posi","errorCode":null,"errorMessage":"Parameter 'limit' for getAllQueryInfo must be positive. Got %d.","messagePattern":"Parameter 'limit' for getAllQueryInfo must be positive\\. Got (.+?)\\.","errorType":"http","errorClass":"WebApplicationException","httpStatus":400,"severity":"error","filePath":"presto-main/src/main/java/com/facebook/presto/resourcemanager/DistributedQueryResource.java","lineNumber":84,"sourceCode":"    private final ResourceManagerProxy proxyHelper;\n\n    @Inject\n    public DistributedQueryResource(ResourceManagerClusterStateProvider clusterStateProvider, ResourceManagerProxy proxyHelper)\n    {\n        this.clusterStateProvider = requireNonNull(clusterStateProvider, \"nodeStateManager is null\");\n        this.proxyHelper = requireNonNull(proxyHelper, \"proxyHelper is null\");\n    }\n\n    @GET\n    public Response getAllQueryInfo(\n            @QueryParam(\"state\") String stateFilter,\n            @QueryParam(\"limit\") Integer limitFilter)\n    {\n        QueryState expectedState = stateFilter == null ? null : QueryState.valueOf(stateFilter.toUpperCase(Locale.ENGLISH));\n        List<BasicQueryInfo> queries;\n        int limit = firstNonNull(limitFilter, Integer.MAX_VALUE);\n        if (limit <= 0) {\n            throw new WebApplicationException(Response\n                    .status(BAD_REQUEST)\n                    .type(MediaType.TEXT_PLAIN)\n                    .entity(format(\"Parameter 'limit' for getAllQueryInfo must be positive. Got %d.\", limit))\n                    .build());\n        }\n        if (stateFilter == null) {\n            queries = clusterStateProvider.getClusterQueries();\n        }\n        else {\n            ImmutableList.Builder<BasicQueryInfo> builder = ImmutableList.builder();\n            for (BasicQueryInfo queryInfo : clusterStateProvider.getClusterQueries()) {\n                if (queryInfo.getState() == expectedState) {\n                    builder.add(queryInfo);\n                }\n            }\n            queries = builder.build();\n        }\n        queries = new ArrayList<>(queries);","sourceCodeStart":66,"sourceCodeEnd":102,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-main/src/main/java/com/facebook/presto/resourcemanager/DistributedQueryResource.java#L66-L102","documentation":"getAllQueryInfo on the resource manager validates the 'limit' query parameter: a non-positive (<=0) limit was supplied, so the request is rejected with this BadRequestException before querying query state.","triggerScenarios":"Thrown at presto-main/src/main/java/com/facebook/presto/resourcemanager/DistributedQueryResource.java:84 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass a positive integer for the limit query parameter, or omit it entirely"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"55bb57d202de3b926896fa966c2c4a44c779634e","analyzedAt":"2026-09-04T12:50:26.162Z","contentChangedAt":"2026-09-04T12:50:26.162Z","schemaVersion":2},"datasetVersion":"2026-09-11T21:17:09.523Z"}