From 5679c97a89c38c6beec3f04396c71704430285c6 Mon Sep 17 00:00:00 2001 From: Sebastian Castro <sebastian.castro@protonmail.com> Date: Thu, 21 Jan 2021 11:45:21 +0100 Subject: [PATCH] Improve performance migration --- src/Command/MigrationCommand.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/Command/MigrationCommand.php b/src/Command/MigrationCommand.php index e647a1219..216d3ab00 100644 --- a/src/Command/MigrationCommand.php +++ b/src/Command/MigrationCommand.php @@ -36,11 +36,9 @@ class MigrationCommand extends Command // v3.2 'db.Configuration.updateMany({}, {$set: {"user.loginWithLesCommuns": true, "user.loginWithLesGoogle": true, "user.loginWithFacebook": true}});', 'db.Option.updateMany({}, {$set: {osmTags: {}}})', - 'db.Element.find({ privateData: { $exists: true, $ne: {} } }).forEach(function(e) { - for(var prop in e.privateData) { e.data[prop] = e.privateData[prop]; } - delete e.privateData; - db.Element.save(e); - });' + 'var mapping = {}; + db.Element.find({ privateData: { $exists: true, $ne: {} } }).forEach(function(doc){Object.keys(doc.privateData).forEach(function(key){mapping["privateData." + key]="data." + key})}); + db.Element.updateMany({ privateData: { $exists: true, $ne: {} } }, {$rename: mapping})' ]; public static $commands = [ -- GitLab