{"record":{"id":"4aa0c91357818610","repo":"prestodb/presto","slug":"invalid-session-property","errorCode":"INVALID_SESSION_PROPERTY","errorMessage":"%s must be > 0 and <= 1.0: %s","messagePattern":"(.+?) must be > 0 and <= 1\\.0: (.+?)","errorType":"validation","errorClass":"PrestoException","httpStatus":null,"severity":"error","filePath":"presto-hive/src/main/java/com/facebook/presto/hive/HiveSessionProperties.java","lineNumber":592,"sourceCode":"                        \"Enable estimating split weights based on size in bytes\",\n                        hiveClientConfig.isSizeBasedSplitWeightsEnabled(),\n                        false),\n                booleanProperty(\n                        DYNAMIC_SPLIT_SIZES_ENABLED,\n                        \"Enable dynamic sizing of splits based on column statistics\",\n                        hiveClientConfig.isDynamicSplitSizesEnabled(),\n                        false),\n                new PropertyMetadata<>(\n                        MINIMUM_ASSIGNED_SPLIT_WEIGHT,\n                        \"Minimum assigned split weight when size based split weighting is enabled\",\n                        DOUBLE,\n                        Double.class,\n                        hiveClientConfig.getMinimumAssignedSplitWeight(),\n                        false,\n                        value -> {\n                            double doubleValue = ((Number) value).doubleValue();\n                            if (!Double.isFinite(doubleValue) || doubleValue <= 0 || doubleValue > 1) {\n                                throw new PrestoException(INVALID_SESSION_PROPERTY, format(\"%s must be > 0 and <= 1.0: %s\", MINIMUM_ASSIGNED_SPLIT_WEIGHT, value));\n                            }\n                            return doubleValue;\n                        },\n                        value -> value),\n                booleanProperty(\n                        USE_RECORD_PAGE_SOURCE_FOR_CUSTOM_SPLIT,\n                        \"Use record page source for custom split\",\n                        hiveClientConfig.isUseRecordPageSourceForCustomSplit(),\n                        false),\n                integerProperty(\n                        MAX_INITIAL_SPLITS,\n                        \"Hive max initial split count\",\n                        hiveClientConfig.getMaxInitialSplits(),\n                        true),\n                booleanProperty(\n                        FILE_SPLITTABLE,\n                        \"If a hive file is splittable when coordinator schedules splits\",\n                        hiveClientConfig.isFileSplittable(),","sourceCodeStart":574,"sourceCodeEnd":610,"githubUrl":"https://github.com/prestodb/presto/blob/55bb57d202de3b926896fa966c2c4a44c779634e/presto-hive/src/main/java/com/facebook/presto/hive/HiveSessionProperties.java#L574-L610","documentation":"The minimum_assigned_split_weight session property is validated when the HiveSessionProperties session property definition is constructed. A value must be a finite number strictly greater than 0 and at most 1.0; otherwise INVALID_SESSION_PROPERTY is thrown with the property name and offending value.","triggerScenarios":"User sets session property <catalog>.minimum_assigned_split_weight to 0, a negative number, a value > 1, NaN, or infinity — validation lambda rejects it at set-property time.","commonSituations":"Typo in the value (e.g. \"0\", \"1.5\", \"-0.1\"), attempting to disable split weighting by setting 0, copy-pasted config from another connector with different ranges.","solutions":["Set minimum_assigned_split_weight to a value in (0, 1.0], e.g. 0.09 (the common default).","Reset the property to default: RESET SESSION hive.minimum_assigned_split_weight;","Fix the value in the catalog properties file if set there (hive.minimum-assigned-split-weight).","If the intent is uniform split weight, use 1.0, not 0."],"exampleFix":"-- before\nSET SESSION hive.minimum_assigned_split_weight = 0;\n-- after\nSET SESSION hive.minimum_assigned_split_weight = 0.09;","handlingStrategy":"validation","validationCode":"double v = Double.parseDouble(rawValue);\nif (!Double.isFinite(v) || v <= 0 || v > 1) {\n    throw new IllegalArgumentException(\"minimum_assigned_split_weight must be in (0, 1.0]: \" + rawValue);\n}","typeGuard":null,"tryCatchPattern":"catch (PrestoException e) {\n    if (\"INVALID_SESSION_PROPERTY\".equals(e.getErrorCode().getName())\n            && e.getMessage().contains(\"minimum_assigned_split_weight\")) {\n        // set the property to a value in (0, 1.0]\n    }\n}","preventionTips":["Keep minimum_assigned_split_weight within (0, 1.0]; 1.0 means uniform split weight.","Validate catalog-properties values with a config linter before deploy.","Don't use 0 to 'disable' the feature — pick a tiny positive value instead.","RESET SESSION the property if experiments left an invalid value."],"tags":["hive","session-property","validation","configuration"],"backgroundTag":"invalid-session-property","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"}