This is a useful feature in some situations: https://releasenotes.docs.salesforce.com/en-us/winter19/release-notes/rn_sales_features_core_oppty_sfx.htm
But this can literally double the share table footprint, right?
And so now we have 2x performance hit if the role hierarchies change for both "owners" (current and previous) at the same time? I want to make sure I use this feature responsibly - with caution - in large orgs.
Am thinking about the potential performance implications correctly?
For large scale org, when there is a bulk change in users in Role Hierarchy, Salesforce recommends to defer the calculation of sharing rules. Also, it is recommended to change the role hierarchy of the user who is at bottom in the hierarchy so that duplicates sharing related records will not get created.
One of the project, I got similar kind of requirements, when case owner is getting changed then that owner should be assigned to case team of the case, so that the user should have edit access to the case.
Here, use case is similar. Salesforce will retain the Opportunity Owners Edit access, basically, it updates the group membership related records from Full to Edit, rather than fully removing them and for new owner or user above the hierarchy it will create new records as usual.