From 052393ef45c3e3aef39b3cc2ceaa05567fe209eb Mon Sep 17 00:00:00 2001 From: Diego Sampaio Date: Thu, 26 Nov 2020 10:53:38 -0300 Subject: [PATCH] Fix permission duplicated error on startup causing CI to halt (#19653) --- app/authorization/server/startup.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/authorization/server/startup.js b/app/authorization/server/startup.js index 2ca73f01092..7db90f9e32c 100644 --- a/app/authorization/server/startup.js +++ b/app/authorization/server/startup.js @@ -187,7 +187,15 @@ Meteor.startup(function() { }, { fields: { _id: 1 } }); if (!existent) { - Permissions.upsert({ _id: permissionId }, { $set: permission }); + try { + Permissions.upsert({ _id: permissionId }, { $set: permission }); + } catch (e) { + if (!e.message.includes('E11000')) { + // E11000 refers to a MongoDB error that can occur when using unique indexes for upserts + // https://docs.mongodb.com/manual/reference/method/db.collection.update/#use-unique-indexes + Permissions.upsert({ _id: permissionId }, { $set: permission }); + } + } } delete previousSettingPermissions[permissionId];