apache/hadoop · error · IOException
The persistent memory volume, dfs.datanode.pmem.cache.dirs i
Error message
The persistent memory volume, dfs.datanode.pmem.cache.dirs is not configured!
What it means
Error "The persistent memory volume, dfs.datanode.pmem.cache.dirs is not configured!" thrown in apache/hadoop.
Source
Thrown at hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/PmemVolumeManager.java:136
private final ArrayList<String> pmemVolumes = new ArrayList<>();
// Maintain which pmem volume a block is cached to.
private final Map<ExtendedBlockId, Byte> blockKeyToVolume =
new ConcurrentHashMap<>();
private final List<UsedBytesCount> usedBytesCounts = new ArrayList<>();
private boolean cacheRecoveryEnabled;
/**
* The total cache capacity in bytes of persistent memory.
*/
private long cacheCapacity;
private static long maxBytesPerPmem = -1;
private int count = 0;
private byte nextIndex = 0;
private PmemVolumeManager(String[] pmemVolumesConfig,
boolean cacheRecoveryEnabled) throws IOException {
if (pmemVolumesConfig == null || pmemVolumesConfig.length == 0) {
throw new IOException("The persistent memory volume, " +
DFSConfigKeys.DFS_DATANODE_PMEM_CACHE_DIRS_KEY +
" is not configured!");
}
this.cacheRecoveryEnabled = cacheRecoveryEnabled;
this.loadVolumes(pmemVolumesConfig);
cacheCapacity = 0L;
for (UsedBytesCount counter : usedBytesCounts) {
cacheCapacity += counter.getMaxBytes();
}
}
public synchronized static void init(
String[] pmemVolumesConfig, boolean cacheRecoveryEnabled)
throws IOException {
if (pmemVolumeManager == null) {
pmemVolumeManager = new PmemVolumeManager(pmemVolumesConfig,
cacheRecoveryEnabled);
}View on GitHub (pinned to 2add963021)
Solutions
- Configure dfs.datanode.pmem.cache.dirs in hdfs-site.xml with the persistent memory (DAX) mount paths before enabling pmem cache.
- Remove pmem cache configuration entirely if persistent memory is not available on this DataNode.
When it happens
Trigger: DataNode startup with memory-mapped (pmem) caching enabled but dfs.datanode.pmem.cache.dirs not configured.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/hadoop@2add963021 (2026-08-22).
Data as JSON: /api/errors/4fdf963728db6651.
Report an issue: GitHub.