{"record":{"id":"9e9af6f0fa648ac8","repo":"apache/hadoop","slug":"fail-to-create-raw-erasure-decoder-with-given-code","errorCode":null,"errorMessage":"Fail to create raw erasure decoder with given codec: {}","messagePattern":"Fail to create raw erasure decoder with given codec: (.+?)","errorType":"exception","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/CodecUtil.java","lineNumber":228,"sourceCode":"      if (!nativeDecoderEnabled && rawCoderName.contains(\"native\")) {\n        LOG.debug(\"Disable the decoder with ISA-L.\");\n        continue;\n      }\n      try {\n        if (rawCoderName != null) {\n          RawErasureCoderFactory fact = createRawCoderFactory(\n              rawCoderName, codecName);\n          return fact.createDecoder(coderOptions);\n        }\n      } catch (LinkageError | Exception e) {\n        // Fallback to next coder if possible\n        if (LOG.isDebugEnabled()) {\n          LOG.debug(\"Failed to create raw erasure decoder \" + rawCoderName +\n                  \", fallback to next codec if possible\", e);\n        }\n      }\n    }\n    throw new IllegalArgumentException(\"Fail to create raw erasure \" +\n        \"decoder with given codec: \" + codecName);\n  }\n\n  private static ErasureCodec createCodec(Configuration conf,\n      String codecClassName, ErasureCodecOptions options) {\n    ErasureCodec codec = null;\n    try {\n      Class<? extends ErasureCodec> codecClass =\n              conf.getClassByName(codecClassName)\n              .asSubclass(ErasureCodec.class);\n      Constructor<? extends ErasureCodec> constructor\n          = codecClass.getConstructor(Configuration.class,\n          ErasureCodecOptions.class);\n      codec = constructor.newInstance(conf, options);\n    } catch (ClassNotFoundException | InstantiationException |\n            IllegalAccessException | NoSuchMethodException |\n            InvocationTargetException e) {\n      throw new RuntimeException(\"Failed to create erasure codec\", e);","sourceCodeStart":210,"sourceCodeEnd":246,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/CodecUtil.java#L210-L246","documentation":"Error \"Fail to create raw erasure decoder with given codec: {}\" thrown in apache/hadoop.","triggerScenarios":"Thrown at hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/erasurecode/CodecUtil.java:228 when the library encounters an invalid state.","commonSituations":"Occurs when the configured erasure codec cannot create a raw decoder, typically because the codec or native library is unavailable. Verify codec configuration and native library availability.","solutions":["Verify the codec name and that the matching raw decoder factory is available on the classpath.","If a native decoder was requested, confirm the native library is built and loadable, or configure the Java fallback coder."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2add9630210752f88ceb1bb74eb65e37bf41da8e","analyzedAt":"2026-08-22T19:55:07.957Z","schemaVersion":2},"datasetVersion":"2026-08-22T20:17:22.307Z"}