Hi,
In a project, we tracked down a database performance bottleneck to the UserProvider. This is not a Bug, but likely a performance improvement that can be made
- The finding is on how the UserProvider checks for ExistingUsers
- It's using the query "select * from AccessUser", which returns all columns
- When looking at the code, it looks like it's really using "AccessUserID", "AccessUserUserName", "AccessUserCustomerNumber", "AccessUserEmail", "AccessUserExternalId"
- When you compare with the EcomDestinationWriter or DynamicwebBulkInsertDestinationWriter this has been simplified, only querying for the necessary columns.
This reduces the payload and performs faster, being more noticeable with the more custom fields and more user records we have.
Am I missing something? If not, could it be optimized?
BR,
Nuno Aguiar