Details
Description
The code in function createRbw as follow
try { // First try to place the block on a transient volume. ref = volumes.getNextTransientVolume(b.getNumBytes()); datanode.getMetrics().incrRamDiskBlocksWrite(); } catch (DiskOutOfSpaceException de) { // Ignore the exception since we just fall back to persistent storage. } finally { if (ref == null) { cacheManager.release(b.getNumBytes()); } }
I think we should log the exception because it took me long time to resolve problems, and maybe others face the same problems.
When i test ram_disk, i found no data was written into randomdisk. I debug, deep into the source code, and found that randomdisk size was less than reserved space. I think if message was logged, i would resolve the problem quickly.