[Vanilla2] Failed to scale cluster because of hive config
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Sahara |
Fix Released
|
High
|
Andrew Lazarev |
Bug Description
Steps to reproduce:
1. Create vanilla2 cluster. I used 1*["namenode", "resourcemanager", "historyserver", "oozie"] + 3*["datanode", "nodemanager"].
2. Scale cluster. I was trying to add 1*["datanode"].
Stacktrace:
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops Traceback (most recent call last):
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops f(cluster_id, *args, **kwds)
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops plugin.
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops cluster.
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops sc.scale_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops config.
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops _provisioning_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops _push_xml_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops _push_configs_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops r.write_file_to(fl, data, run_as_root=True)
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops self._run_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops return self._run_
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops return self._run(func, *args, **kwargs)
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops return procutils.
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops File "/Users/
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops SubprocessExcep
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops Return code: 1
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops STDERR:
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops mv: cannot move temp-file-
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops Error ID: 059ca13b-
2014-12-05 15:12:25.769 97815 TRACE sahara.service.ops
2014-12-05 15:12:25.911 97815 INFO sahara.
Reproduced both on ubuntu and fedora juno images.
Note, stacktrace in master is hidden because of https:/
It looks like problem was introduced by https:/
description: | updated |
Changed in sahara: | |
milestone: | none → kilo-2 |
Changed in sahara: | |
assignee: | nobody → Andrew Lazarev (alazarev) |
importance: | Undecided → High |
Changed in sahara: | |
milestone: | kilo-2 → kilo-1 |
status: | Fix Committed → Fix Released |
Changed in sahara: | |
milestone: | kilo-1 → 2015.1.0 |
The problem is that instance config after merging contains {'Hive': {}}. to_conf_ map.keys( )". Empty config is considered enough reason to place config file. And new node (with only datanode process) doesn't have folder for hive config.
Code that decides either to place service config uses simple "if service in service_