chore: run save operations in parallel where possible #1401
@ -64,9 +64,11 @@ export const contributeToDojoComponentController: RequestHandler = async (req, r
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    await guild.save();
 | 
			
		||||
    await inventory.save();
 | 
			
		||||
    await guildMember.save();
 | 
			
		||||
    await Promise.all([
 | 
			
		||||
        guild.save(),
 | 
			
		||||
        inventory.save(),
 | 
			
		||||
        guildMember.save(),
 | 
			
		||||
    ]);
 | 
			
		||||
    res.json({
 | 
			
		||||
        ...(await getDojoClient(guild, 0, component._id)),
 | 
			
		||||
        InventoryChanges: inventoryChanges
 | 
			
		||||
 | 
			
		||||
@ -52,9 +52,11 @@ export const contributeToVaultController: RequestHandler = async (req, res) => {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    await guild.save();
 | 
			
		||||
    await inventory.save();
 | 
			
		||||
    await guildMember.save();
 | 
			
		||||
    await Promise.all([
 | 
			
		||||
        guild.save(),
 | 
			
		||||
        inventory.save(),
 | 
			
		||||
        guildMember.save(),
 | 
			
		||||
    ]);
 | 
			
		||||
    res.end();
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -47,13 +47,15 @@ export const dojoComponentRushController: RequestHandler = async (req, res) => {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    await guild.save();
 | 
			
		||||
    await inventory.save();
 | 
			
		||||
 | 
			
		||||
    const guildMember = (await GuildMember.findOne({ accountId, guildId: guild._id }, "PremiumCreditsContributed"))!;
 | 
			
		||||
    guildMember.PremiumCreditsContributed ??= 0;
 | 
			
		||||
    guildMember.PremiumCreditsContributed += request.Amount;
 | 
			
		||||
    await guildMember.save();
 | 
			
		||||
 | 
			
		||||
    await Promise.all([
 | 
			
		||||
        guild.save(),
 | 
			
		||||
        inventory.save(),
 | 
			
		||||
        guildMember.save(),
 | 
			
		||||
    ]);
 | 
			
		||||
 | 
			
		||||
    res.json({
 | 
			
		||||
        ...(await getDojoClient(guild, 0, component._id)),
 | 
			
		||||
 | 
			
		||||
@ -157,9 +157,11 @@ export const guildTechController: RequestHandler = async (req, res) => {
 | 
			
		||||
        // Check if research is fully funded now.
 | 
			
		||||
        await processGuildTechProjectContributionsUpdate(guild, techProject);
 | 
			
		||||
 | 
			
		||||
        await guild.save();
 | 
			
		||||
        await inventory.save();
 | 
			
		||||
        await guildMember.save();
 | 
			
		||||
        await Promise.all([
 | 
			
		||||
            guild.save(),
 | 
			
		||||
            inventory.save(),
 | 
			
		||||
            guildMember.save(),
 | 
			
		||||
        ]);
 | 
			
		||||
        res.json({
 | 
			
		||||
            InventoryChanges: inventoryChanges,
 | 
			
		||||
            Vault: getGuildVault(guild)
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user