{"record":{"id":"9ff855d870c000d3","repo":"apache/hadoop","slug":"inconsistent-checkpoint-fields-nlv-layoutversio","errorCode":null,"errorMessage":"Inconsistent checkpoint fields.\\nLV = layoutVersion namespaceID = namespaceID cTime = cTime ; clusterId = clusterID ; blockpoolId = blockpoolID.\\nExpecting respectively: si.getStorage().layoutVersion; si.getStorage().namespaceID; si.getStorage().cTime; si.getClusterID(); si.getBlockPoolID().","messagePattern":"Inconsistent checkpoint fields\\.\\\\nLV = layoutVersion namespaceID = namespaceID cTime = cTime ; clusterId = clusterID ; blockpoolId = blockpoolID\\.\\\\nExpecting respectively: si\\.getStorage\\(\\)\\.layoutVersion; si\\.getStorage\\(\\)\\.namespaceID; si\\.getStorage\\(\\)\\.cTime; si\\.getClusterID\\(\\); si\\.getBlockPoolID\\(\\)\\.","errorType":"exception","errorClass":"IOException","httpStatus":null,"severity":"error","filePath":"hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CheckpointSignature.java","lineNumber":134,"sourceCode":"\n  boolean storageVersionMatches(StorageInfo si) throws IOException {\n    return (layoutVersion == si.layoutVersion) && (cTime == si.cTime);\n  }\n\n  boolean isSameCluster(FSImage si) {\n    return namespaceID == si.getStorage().namespaceID &&\n      clusterID.equals(si.getClusterID()) &&\n      blockpoolID.equals(si.getBlockPoolID());\n  }\n\n  boolean namespaceIdMatches(FSImage si) {\n    return namespaceID == si.getStorage().namespaceID;\n  }\n\n  void validateStorageInfo(FSImage si) throws IOException {\n    if (!isSameCluster(si)\n        || !storageVersionMatches(si.getStorage())) {\n      throw new IOException(\"Inconsistent checkpoint fields.\\n\"\n          + \"LV = \" + layoutVersion + \" namespaceID = \" + namespaceID\n          + \" cTime = \" + cTime\n          + \" ; clusterId = \" + clusterID\n          + \" ; blockpoolId = \" + blockpoolID\n          + \".\\nExpecting respectively: \"\n          + si.getStorage().layoutVersion + \"; \" \n          + si.getStorage().namespaceID + \"; \" + si.getStorage().cTime\n          + \"; \" + si.getClusterID() + \"; \" \n          + si.getBlockPoolID() + \".\");\n    }\n  }\n\n  //\n  // Comparable interface\n  //\n  @Override\n  public int compareTo(CheckpointSignature o) {\n    return ComparisonChain.start()","sourceCodeStart":116,"sourceCodeEnd":152,"githubUrl":"https://github.com/apache/hadoop/blob/2add9630210752f88ceb1bb74eb65e37bf41da8e/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/CheckpointSignature.java#L116-L152","documentation":"Error \"Inconsistent checkpoint fields.\\nLV = layoutVersion namespaceID = namespaceID cTime = cTime ; clusterId = clusterID ; blockpoolId = blockpoolID.\\nExpecting respectively: si.getStorage().layoutVersion; si.getStorage().namespaceID; si.getStorage().cTime; si.getClusterID(); si.getBlockPoolID().\" thrown in apache/hadoop.","triggerScenarios":"Checkpoint image validation when layout version, namespace ID, cTime, cluster ID or blockpool ID in the checkpoint do not match the NameNode's storage info.","commonSituations":"See trigger scenarios.","solutions":["Do not mix fsimage/edits from different clusters or namespaces; roll the checkpoint with matching storage info.","Re-bootstrap the standby/backup node so its layout version, namespace ID, cluster ID and block pool ID match the active NameNode."],"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"}