{"record":{"id":"ae9f22210c889c08","repo":"gradle/gradle","slug":"invalid-hash-code-length-d-characters","errorCode":null,"errorMessage":"Invalid hash code length: %d characters","messagePattern":"Invalid hash code length: (.+?) characters","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"platforms/core-execution/hashing/src/main/java/org/gradle/internal/hash/HashCode.java","lineNumber":96,"sourceCode":"    }\n\n    /**\n     * Decodes the hash code from a string.\n     * <p>\n     * A corresponding operation for encoding/decoding is {@link #toString()}:\n     * <pre>{@code\n     *      assertEquals(hash, HashCode.fromString(hash.toString()))\n     * }</pre>\n     * <p>\n     * This method does not work with {@link #toCompactString()}.\n     */\n    public static HashCode fromString(String string) {\n        int length = string.length();\n\n        if (length % 2 != 0\n            || length < MIN_NUMBER_OF_BYTES * 2\n            || length > MAX_NUMBER_OF_BYTES * 2) {\n            throw new IllegalArgumentException(String.format(\"Invalid hash code length: %d characters\", length));\n        }\n\n        byte[] bytes = new byte[length / 2];\n        for (int i = 0; i < length; i += 2) {\n            int ch1 = decode(string.charAt(i)) << 4;\n            int ch2 = decode(string.charAt(i + 1));\n            bytes[i / 2] = (byte) (ch1 + ch2);\n        }\n\n        return fromBytes(bytes, SAFE_TO_REUSE_BYTES);\n    }\n\n    private static int decode(char ch) {\n        if (ch >= '0' && ch <= '9') {\n            return ch - '0';\n        }\n        if (ch >= 'a' && ch <= 'f') {\n            return ch - 'a' + 10;","sourceCodeStart":78,"sourceCodeEnd":114,"githubUrl":"https://github.com/gradle/gradle/blob/534f27719b66953f95cc907aae7f2c1b12f5482d/platforms/core-execution/hashing/src/main/java/org/gradle/internal/hash/HashCode.java#L78-L114","documentation":"Error \"Invalid hash code length: %d characters\" thrown in gradle/gradle.","triggerScenarios":"Thrown at platforms/core-execution/hashing/src/main/java/org/gradle/internal/hash/HashCode.java:96 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["The hash hex string has an invalid length. Supply a hex string of the correct character length for the algorithm."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"534f27719b66953f95cc907aae7f2c1b12f5482d","analyzedAt":"2026-08-22T08:09:12.375Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}