Wix Hooks not giving reliable results

Hi guys,

I have an issue with wix hooks. I am using an afterupdate hook to calculate 3 values in a database collection if that collection is updated in another page. But this calculation in unreliable and is working sometimes and sometimes its not working. Is there any known bugs with wix hooks? Here is my code that i am using in the backend.

export async function Database1_afterUpdate(item, context) {
 let itemTemp = item;
 let deviceCost = itemTemp.deviceCost;
 let deviceTireID = itemTemp.deviceTier;
 if ((deviceCost !== undefined) && (deviceTireID !== undefined)) {
 var lowerPayback;
 var upperPayback;
 await wixData.query("Database2")
            .eq("_id", deviceTireID._id)
            .find()
            .then((results) => {
 if (results.items.length > 0) {
 let firstItem = results.items[0];
                    lowerPayback = firstItem.lowerPayback;
                    upperPayback = firstItem.upperPayback;
 let highMrcTarget = Number(deviceCost / upperPayback);
 let lowMrcTarget = Number(deviceCost / lowerPayback);
 let midMrcTarget = (highMrcTarget + lowMrcTarget) / 2;
                    itemTemp.highMrcTarget = highMrcTarget;
                    itemTemp.lowMrcTarget = lowMrcTarget;
                    itemTemp.midMrcTarget = midMrcTarget;

                } else {
                    itemTemp.highMrcTarget = undefined;
                    itemTemp.lowMrcTarget = undefined;
                    itemTemp.midMrcTarget = undefined;

                }

            });
        item = itemTemp;
    } else {
        item = itemTemp;
    }

 return item;
}