{"record":{"id":"5ab3409bd3986840","repo":"elastic/elasticsearch","slug":"window-must-be-a-positive-non-zero-integer","errorCode":null,"errorMessage":"[window] must be a positive, non-zero integer.","messagePattern":"\\[window\\] must be a positive, non-zero integer\\.","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"modules/aggregations/src/main/java/org/elasticsearch/aggregations/pipeline/MovFnPipelineAggregationBuilder.java","lineNumber":79,"sourceCode":"        );\n        PARSER.declareInt(constructorArg(), WINDOW);\n\n        PARSER.declareInt(MovFnPipelineAggregationBuilder::setShift, SHIFT);\n        PARSER.declareString(MovFnPipelineAggregationBuilder::format, FORMAT);\n        PARSER.declareField(MovFnPipelineAggregationBuilder::gapPolicy, p -> {\n            if (p.currentToken() == XContentParser.Token.VALUE_STRING) {\n                return GapPolicy.parse(p.text().toLowerCase(Locale.ROOT), p.getTokenLocation());\n            }\n            throw new IllegalArgumentException(\"Unsupported token [\" + p.currentToken() + \"]\");\n        }, GAP_POLICY, ObjectParser.ValueType.STRING);\n    }\n\n    public MovFnPipelineAggregationBuilder(String name, String bucketsPath, Script script, int window) {\n        super(name, NAME, new String[] { bucketsPath });\n        this.bucketsPathString = bucketsPath;\n        this.script = script;\n        if (window <= 0) {\n            throw new IllegalArgumentException(\"[\" + WINDOW.getPreferredName() + \"] must be a positive, non-zero integer.\");\n        }\n        this.window = window;\n    }\n\n    public MovFnPipelineAggregationBuilder(StreamInput in) throws IOException {\n        super(in, NAME);\n        bucketsPathString = in.readString();\n        script = new Script(in);\n        format = in.readOptionalString();\n        gapPolicy = GapPolicy.readFrom(in);\n        window = in.readInt();\n        shift = in.readInt();\n    }\n\n    @Override\n    protected void doWriteTo(StreamOutput out) throws IOException {\n        out.writeString(bucketsPathString);\n        script.writeTo(out);","sourceCodeStart":61,"sourceCodeEnd":97,"githubUrl":"https://github.com/elastic/elasticsearch/blob/db6a809a667c081ca1dc7500389d26975573215f/modules/aggregations/src/main/java/org/elasticsearch/aggregations/pipeline/MovFnPipelineAggregationBuilder.java#L61-L97","documentation":"Error \"[window] must be a positive, non-zero integer.\" thrown in elastic/elasticsearch.","triggerScenarios":"Thrown at modules/aggregations/src/main/java/org/elasticsearch/aggregations/pipeline/MovFnPipelineAggregationBuilder.java:79 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"db6a809a667c081ca1dc7500389d26975573215f","analyzedAt":"2026-08-12T01:39:14.192Z","schemaVersion":2},"datasetVersion":"2026-08-12T08:17:17.861Z"}