Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
2.4.0
-
None
Description
AMBARI-16888 handled the scenario when capacity-scheduler is passed in as dictionary and services['configurations']["capacity-scheduler"]["properties"]["capacity-scheduler"] set as value = "null".
"capacity-scheduler" : { "properties" : { "capacity-scheduler" : "null", "yarn.scheduler.capacity.root.accessible-node-labels" : "*", "yarn.scheduler.capacity.maximum-am-resource-percent" : "1", "yarn.scheduler.capacity.root.acl_administer_queue" : "*", "yarn.scheduler.capacity.queue-mappings-override.enable" : 'false', "yarn.scheduler.capacity.root.default.capacity" : "100", "yarn.scheduler.capacity.root.default.user-limit-factor" : "1", "yarn.scheduler.capacity.root.queues" : "default", "yarn.scheduler.capacity.root.capacity" : "100", "yarn.scheduler.capacity.root.default.acl_submit_applications" : "*", "yarn.scheduler.capacity.root.default.maximum-capacity" : "100", "yarn.scheduler.capacity.node-locality-delay" : "40", "yarn.scheduler.capacity.maximum-applications" : "10000", "yarn.scheduler.capacity.root.default.state" : "RUNNING" } },
But. there can be another scenario where passed-in 'capacity-scheduler' is like :
"capacity-scheduler" : { "properties" : { "capacity-scheduler" : null, "yarn.scheduler.capacity.root.accessible-node-labels" : "*", "yarn.scheduler.capacity.maximum-am-resource-percent" : "1", "yarn.scheduler.capacity.root.acl_administer_queue" : "*", "yarn.scheduler.capacity.queue-mappings-override.enable" : 'false', "yarn.scheduler.capacity.root.default.capacity" : "100", "yarn.scheduler.capacity.root.default.user-limit-factor" : "1", "yarn.scheduler.capacity.root.queues" : "default", "yarn.scheduler.capacity.root.capacity" : "100", "yarn.scheduler.capacity.root.default.acl_submit_applications" : "*", "yarn.scheduler.capacity.root.default.maximum-capacity" : "100", "yarn.scheduler.capacity.node-locality-delay" : "40", "yarn.scheduler.capacity.maximum-applications" : "10000", "yarn.scheduler.capacity.root.default.state" : "RUNNING" } },
Here, services['configurations']["capacity-scheduler"]["properties"]["capacity-scheduler"] is itself 'null'.
We get into reading capacity-scheduler configs as key-value only if we dont find configs passed in as single '\n' string at level services['configurations']["capacity-scheduler"]["properties"]["capacity-scheduler"]:
Attachments
Attachments
Issue Links
- links to