Closed
Description
Is the addition of an IAM (particularly authorized view permissions) additive or destructive?
In a process to add an access_entry to a view_dataset, does BQ has to drop existing ones and then create all (along with new addition) of them, or is it smart enough to keep the existing ones untouched? If it is a destructive one, then similar calls (adding different access entries to the same dataset) from two different clients can encounter race conditions.
# additive or destructive?
access_entries.append(some_new_access_entry)
view_dataset.access_entries = access_entries
The corresponding API (https://cloud.google.com/bigquery/docs/reference/rest/v2/datasets/patch) (and data object https://cloud.google.com/bigquery/docs/reference/rest/v2/datasets) also doesn't seem to provide any details on this.