datacratic / StarCluster

StarCluster is a utility for creating and managing computing clusters hosted on Amazon's Elastic Compute Cloud (EC2).
http://star.mit.edu/cluster
GNU Lesser General Public License v3.0
37 stars 13 forks source link

Unknown configuration key exception thrown when starting cluster #36

Closed erikedlund closed 8 years ago

erikedlund commented 8 years ago

I got the following exception when trying to start a cluster after installing the most recent version of vanilla_improvements:

$ starcluster start test StarCluster - (http://star.mit.edu/cluster) (v. 0.9999) Software Tools for Academics and Researchers (STAR) Please submit bug reports to starcluster@mit.edu

2015-12-14 13:24:06,357 >>> Using default cluster template: smallcluster 2015-12-14 13:24:06,358 !!! ERROR - Unknown configuration key: create_only 2015-12-14 13:24:06,358 !!! ERROR - Unhandled exception occured Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/StarCluster-0.9999-py2.7.egg/starcluster/cli.py", line 275, in main sc.execute(args) File "/usr/local/lib/python2.7/dist-packages/StarCluster-0.9999-py2.7.egg/starcluster/commands/start.py", line 248, in execute scluster.update(self.specified_options_dict) File "/usr/local/lib/python2.7/dist-packages/StarCluster-0.9999-py2.7.egg/starcluster/cluster.py", line 643, in update raise Exception("Unknown configuration key: " + key) Exception: Unknown configuration key: create_only

2015-12-14 13:24:06,378 !!! ERROR - Oops! Looks like you've found a bug in StarCluster 2015-12-14 13:24:06,378 !!! ERROR - Crash report written to: /home/edlunde/.starcluster/logs/crash-report-13613.txt 2015-12-14 13:24:06,378 !!! ERROR - Please remove any sensitive data from the crash report 2015-12-14 13:24:06,378 !!! ERROR - and submit it to starcluster@mit.edu

I wondered if it was an issue with my configuration file, so I tried it with the default config template and got the same message. Looks like it's related to this commit:

https://github.com/datacratic/StarCluster/commit/9a9bcd3a23d639410dc7dd0b44cfb85fe6381281

FinchPowers commented 8 years ago

Good work on catching that.

That commit was made to prevent any bogus keywords to go unnoticed. It seems that the design of StarCluster used it as a sink to any irrelevant args as well.

I see two issues here.

  1. The "create_only" parameter made its way to the saved configuration. It's a runtime parameter and don't think there is a point in keeping it there. Did you use the config-on-master flag? If so, you can edit it and remove the create_only flag from there. If you did not use that parameter, this commit will be a problem for you. You can remove the Exception at starcluster/cluster.py", line 643 or revert it.
  2. It looks like the start options are passed directly to Cluster.init, regardless of their relevance. I'll have a look into it.

It is probable that fixing no.2 will fix no.1. I'll look into it.

FinchPowers commented 8 years ago

I see the --config-on-master flag is not available with the start command so scratch that part.

FinchPowers commented 8 years ago

It should be fixed when using start --create-only to create a cluster. https://github.com/datacratic/StarCluster/commit/a655c60837d18e6511d87ffe4339d575793fbc03