Details
-
Type:
Bug
-
Status: Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: CDH5.0.0
-
Fix Version/s: None
-
Component/s: YARN
-
Labels:None
Description
Between CDH5-beta and CDH5 GA, the default setting of yarn.application.classpath has changed. It now contains HADOOP_CLIENT_CONF_DIR as the first path element, while before it was HADOOP_CONF_DIR.
As a result, containers now run with different log4j settings. HADOOP_CONF_DIR has log4j.properties per basic Hadoop setup, including RFA (that's what the node manager and other services are also using). HADOOP_CLIENT_CONF_DIR has a minimal setup with no file appenders.
Why does HADOOP_CLIENT_CONF_DIR appear in yarn.application.classpath? Wasn't it (like other CLIENT variables) intended for the client and not for containers?
Our application platform has long running containers and depends on rolling log file setup out of the box. It would be good to see this back by default in CDH. As it stands, the user would have to reinvent something that was already available. Asking each user to configure log4j from scratch is not a viable solution and makes troubleshooting the system very difficult.