Details
Description
Taking a full AttributeDescriptor[] is unecessary and dangeours, as the user provided descriptor might be inconsitent with the ones declared by the datastore, e.g., they could have different constraints, different metadata or different bindings. The methods should just take enough information to locate the attributes that need updating, and eventually throw an exception if the attribute is not found in the schema.
Not scheduling for the short term, but sure this looks like a design mistake that needs fixing at our next iteration of datatore improvements.
Going to prepair a patch for 2.6.x as this really does look to be a mistake.