Red Hat Bugzilla – Bug 852552
[as7] Cannot unset resource configuration properties
Last modified: 2013-11-15 15:21:45 EST
Description of problem:
For various AS7 subresources, cannot unset resource configuration properties. The properties are updated to any value that is non-empty. The properties however, do not get updated if either the unset checkbox is clicked or if the value from the field is empty.
This only applies to non-required properties. For required properties the option to unset the property is not available, and the save button is disable until the field has a non-empty value (UI Validation).
Steps to Reproduce:
1. Discover and import an AS7 standalone server
2. Find any resource with non-required properties that currently set.
3. Either click on the unset checkbox or remove all the contents of the textbox
4. Save the configuration
The save operation succeeds but the property values is still set to the old value (before unset)
The save operation succeeds but the property is now null or the default value if a default value is available for the property.
This bug does not apply to resource creation. If a field is set to unset in the resource creation page, the field will get the default AS7 value upon resource creation since the AS7 plugin will not send a property configuration request to AS7 for the respective property.
The following resources had to be updated because of this change. There is no functional update to any of these resources. All the changes are done to prevent regressions due to the plugin sending all the properties back to the server.
1) Transport (*/subsystem=infinispan/cache-container=*/transport=TRANSPORT):
Removed Transport properties that were no longer in the resource definition.
2) Mod-cluster Configuration (/subsystem=modcluster,mod-cluster-config=configuration):
Replaced a property name referenced by alias with the actual name. The alias is no longer working correctly.
3) Distributed Cache (*/subsystem=infinispan/cache-container=*/distributed-cache=*):
Created a separate resource for distributed-cache because it has three extra properties when compared to invalidation-cache and replicated-cache.
4) Socket-Binding Group:
Update the resource component to avoid sending port-offset configuration to the server for AS7 host controllers by removing the property completely from the definition and update report. Before this change, the property was not sent anyway because it was null, and null values were not sent to the server.
5) Transactions (*/subsystem=transactions):
Added special validation rules for properties.
6) Data-source and XA Data-source:
Updated the way configuration updates are sent for 9 properties. While these properties look undefined in the server, they cannot undefined or set to null at any point in time. The application server makes use of the default value at all times.
master branch commits:
Bulk closing of items that are on_qa and in old RHQ releases, which are out for a long time and where the issue has not been re-opened since.