Description of problem: $ condor_configure_store -a -p X :wq $ Adding the following parameter: X with {} Modifying the following parameter: X with {:needsRestart=>false, :must_change=>false, :level=>0} invalid argument: --annotation Usage: wallaby modify-param PARAMETER [...] [OPTIONS] -h, --help displays this message --description VALUE Sets the description property of the modified parameter (valid values are strings) --default-val VALUE Sets the default_val property of the modified parameter (valid values are strings) --kind VALUE Sets the kind property of the modified parameter (valid values are strings) --needs-restart VALUE Sets the needsRestart property of the modified parameter (valid values are "yes", "no") --must-change VALUE Sets the must_change property of the modified parameter (valid values are "yes", "no") --annotation VALUE Sets the annotation property of the modified parameter (valid values are strings) --level VALUE Sets the level property of the modified parameter (valid values are integers) fatal: ModifyParam returned non-zero OK, let's try it again: $ condor_configure_store -a -p X :wq Couldn't create parameter X (Parameter name X is already taken) fatal: AddParam returned non-zero It's taken, so I edit it: $ condor_configure_store -e -p X fatal: undefined method `count' for ["needs", "restart"]:Array Let's try existed param for check where bug is: $ condor_configure_store -e -p STARTD_DEBUG Console Connection Established... fatal: undefined method `count' for ["needs", "restart"]:Array $ condor_configure_store -l -p STARTD_DEBUG Console Connection Established... STARTD_DEBUG kind: "String" default: "" description: "The debugging output that the startd will produce in its log" must_change: false requires_restart: false visibility_level: 0 depends: [] conflicts: [] annotation: "" [root@mrg-qe-04 grid_basic_api]# Version-Release number of selected component (if applicable): condor-7.8.7-0.1.el5 condor-aviary-7.8.7-0.1.el5 condor-classads-7.8.7-0.1.el5 condor-qmf-7.8.7-0.1.el5 condor-wallaby-base-db-1.24-1.el5 condor-wallaby-client-5.0.3-2.el5 condor-wallaby-tools-5.0.3-2.el5 python-condorutils-1.5-5.el5 python-qpid-0.14-11.el5 python-qpid-qmf-0.14-14.el5 python-wallabyclient-5.0.3-2.el5 qpid-cpp-client-0.14-22.el5 qpid-cpp-client-devel-0.14-22.el5 qpid-cpp-client-devel-docs-0.14-22.el5 qpid-cpp-client-ssl-0.14-22.el5 qpid-cpp-server-0.14-22.el5 qpid-cpp-server-cluster-0.14-22.el5 qpid-cpp-server-devel-0.14-22.el5 qpid-cpp-server-ssl-0.14-22.el5 qpid-cpp-server-store-0.14-22.el5 qpid-cpp-server-xml-0.14-22.el5 qpid-java-client-0.18-2.el5 qpid-java-common-0.18-2.el5 qpid-java-example-0.18-2.el5 qpid-qmf-0.14-14.el5 qpid-qmf-devel-0.14-14.el5 qpid-tools-0.14-6.el5 ruby-condor-wallaby-5.0.3-2.el5 ruby-qpid-qmf-0.14-14.el5 ruby-wallaby-0.16.1-2.el5 wallaby-0.16.1-2.el5 wallaby-utils-0.16.1-2.el5 How reproducible: 100% Steps to Reproduce: 1. install condor, qpid and wallaby and configure pool with wallaby 2. try add new param to store with default values for all attributes. 3. try edit existed parameter Actual results: It is not possible to edit param in store. It is not possible to add new param with default attributes values. Expected results: It will be possible to edit param in store. It will be possible to add new param with default attributes values.
The issue is that the modify-parm command does not accept a '--annotation ""' as a valid option, which is what ccs uses when the annotation is empty. The wallaby shell command doesn't support blanking the annotation, and so neither does ccs. No functionality is lost. All other metdata will be set, but any blank annotation will produce the above error message.
The same problem with annotation have also group and feature: # ccs -a -f feat Console Connection Established... Adding the following feature: feat invalid argument: --annotation Usage: wallaby modify-feature FEATURE [OPTIONS] -h, --help displays this message --name VALUE Sets the name property of the modified feature (valid values are strings) --annotation VALUE Sets the annotation property of the modified feature (valid values are strings) fatal: ModifyFeature returned non-zero # ccs -a -g group Console Connection Established... Adding the following group: group invalid argument: --annotation Usage: wallaby modify-group GROUP [OPTIONS] -h, --help displays this message --name VALUE Sets the name property of the modified group (valid values are strings) --annotation VALUE Sets the annotation property of the modified group (valid values are strings) fatal: ModifyGroup returned non-zero
For edit issue a new Bug 879671 was created.
(In reply to comment #1) > The issue is that the modify-parm command does not accept a '--annotation > ""' as a valid option, which is what ccs uses when the annotation is empty. > The wallaby shell command doesn't support blanking the annotation, and so > neither does ccs. No functionality is lost. All other metdata will be set, Actually it's not completely true, because when user try to create more than one object (e.g. parameter) only metadata for the first one are set, all others have default setting only. # ccs -a -p PAR10,PAR11 Console Connection Established... Adding the following parameter: PAR11 with {} Adding the following parameter: PAR10 with {} Modifying the following parameter: PAR11 with {:description=>"desc", :needsRestart=>true, :level=>2, :must_change=>false} invalid argument: --annotation Usage: wallaby modify-param PARAMETER [...] [OPTIONS] -h, --help displays this message --kind VALUE Sets the kind property of the modified parameter (valid values are strings) --description VALUE Sets the description property of the modified parameter (valid values are strings) --default-val VALUE Sets the default_val property of the modified parameter (valid values are strings) --needs-restart VALUE Sets the needsRestart property of the modified parameter (valid values are "yes", "no") --level VALUE Sets the level property of the modified parameter (valid values are integers) --must-change VALUE Sets the must_change property of the modified parameter (valid values are "yes", "no") --annotation VALUE Sets the annotation property of the modified parameter (valid values are strings) fatal: ModifyParam returned non-zero # ccs -l -p PAR10,PAR11 Console Connection Established... PAR11 kind: "string" default: "" description: "desc" must_change: false requires_restart: true visibility_level: 2 depends: ["PAR"] conflicts: [] annotation: "" PAR10 kind: "string" default: "" description: "" must_change: false requires_restart: false visibility_level: 0 depends: [] conflicts: [] annotation: ""
The issue of modifying more than 1 object not taking will be resolved with changes for 880302