The error self-suppression not permitted
is not the actual error here.
This error is thrown by JVM when runtime tries to throw multiple THROWABLE
instance from code.
To do so, JDK-7 introduces the "suppressedExceptions" to Throwable to suppress previous exception and retain very recent exception.
So Java tries - throwable.addSuppressed(throwable)
- which is invalid and Throwable instance itself throws the IllegalArgumentException and the real exception is lost this way.
From this in log: Caused by: java.io.IOException: All datanodes DatanodeInfoWithStorag
, It seems like there is some issue with datanode.
If you look into the running services in the cluster, and check if all datanodes and daemons are running fine; things may go in track.
Issues could be:
- Issue in datanode. Restart cluster daemons.
- Heart beat between datanodes and namenode: Network Issues or permission access issues.
- datanode's memory issue.
- Datanode busy or unresponsive