ACTUALIZACIÓN:@Thomas4019
señala que upsert
ahora es compatible:
v0.6.6
"Agregue compatibilidad con upsert. Collection.update ahora admite la opción {upsert:true}. Además, agregue un método Collection.upsert que devuelve la identificación del objeto recién insertado, si corresponde".
Fuente:History.md
Documentación de uso:http://docs.meteor.com/#upsert
-- sigue la respuesta original --
Hay una tarjeta en Trello Meteor Roadmap que puede votar para indicar su importancia para usted:https:// trello.com/c/C91INHmj
Actualmente se encuentra en la lista "Más tarde", lo que significa que pasará un tiempo antes de que se implemente a menos que reciba muchos votos.
La otra cosa importante a tener en cuenta es que, dado que Meteor es de código abierto, puede implementar los cambios necesarios usted mismo y enviarlo de vuelta.
Hay varias soluciones, pero es imposible saber cuál es la más apropiada para su caso de uso sin tener más conocimiento de su diseño.
-
Use el código tal como está, agregue un índice único a la colección y maneje el error de clave duplicada si surge
-
Cambie el diseño para implementar la concurrencia optimista explícita.
El núcleo de ambas soluciones es el mismo, manejar con gracia el caso de error. #1 es más fácil de implementar. #2 permite una mayor flexibilidad en cómo se maneja la concurrencia optimista.