You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The MongoDB adapter allow to pass specific MongoDB options in params.mongodb. When updating items MongoDB supports the upsert option in order to create them if not already exist. However, in this specific case, when patching items not yet existing with the upsert option the adapter will not return any result as it seems to retrieve the list of patched object first, which is empty.
Not sure why the list of patched items is retrieved first instead of once patched, maybe a specific check should be done on the upsert option to use the most appropriate way to retrieve the patched objects.
The text was updated successfully, but these errors were encountered:
I see what you mean. I can answer why the list is pre-fetched and the re-fetched. This is to prevent wrong queries when the user both queries and mutates a property in the same call. This is a common pattern in the database adapters for multi patch. For example,
Because we queried by June Cash and also updated the name to Johnny Cash, we cannot then re-query by June Cash because it is no longer valid.
I do see that the updateMany function does return upsertedId and upsertedCount . So we could probably get those and add them to the idList to re-fetch.
The MongoDB adapter allow to pass specific MongoDB options in
params.mongodb
. When updating items MongoDB supports theupsert
option in order to create them if not already exist. However, in this specific case, when patching items not yet existing with the upsert option the adapter will not return any result as it seems to retrieve the list of patched object first, which is empty.Not sure why the list of patched items is retrieved first instead of once patched, maybe a specific check should be done on the upsert option to use the most appropriate way to retrieve the patched objects.
The text was updated successfully, but these errors were encountered: