ordered transaction commit

This commit is contained in:
Ulf Gebhardt 2021-11-05 00:08:15 +01:00
parent 95d6884b0b
commit 8f2506eeca
Signed by: ulfgebhardt
GPG Key ID: DA6B843E748679C9

View File

@ -412,27 +412,14 @@ export class TransactionResolver {
throw new Error('error loading saved transaction: ' + error)
})
// update state balance
const senderStateBalance = await updateStateBalance(
senderUser,
-centAmount,
transaction.received,
queryRunner,
)
const recipiantStateBalance = await updateStateBalance(
recipiantUser,
centAmount,
transaction.received,
queryRunner,
)
// update user transactions
// Insert Transaction: sender - amount
const senderUserTransactionBalance = await addUserTransaction(
senderUser,
transaction,
-centAmount,
queryRunner,
)
// Insert Transaction: recipient + amount
const recipiantUserTransactionBalance = await addUserTransaction(
recipiantUser,
transaction,
@ -440,6 +427,21 @@ export class TransactionResolver {
queryRunner,
)
// Update Balance: sender - amount
const senderStateBalance = await updateStateBalance(
senderUser,
-centAmount,
transaction.received,
queryRunner,
)
// Update Balance: recipiant + amount
const recipiantStateBalance = await updateStateBalance(
recipiantUser,
centAmount,
transaction.received,
queryRunner,
)
if (senderStateBalance.amount !== senderUserTransactionBalance.balance) {
throw new Error('db data corrupted, sender')
}