Skip to content

Commit

Permalink
Extract entryId variable (#4471)
Browse files Browse the repository at this point in the history
  • Loading branch information
rainydio authored Aug 24, 2021
1 parent 2a7d7b5 commit 5815752
Showing 1 changed file with 11 additions and 13 deletions.
24 changes: 11 additions & 13 deletions packages/core-transaction-pool/src/processor.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Container, Contracts, Utils as AppUtils } from "@arkecosystem/core-kernel";
import { Container, Contracts } from "@arkecosystem/core-kernel";
import { Enums, Interfaces, Transactions } from "@arkecosystem/crypto";
import ByteBuffer from "bytebuffer";

Expand Down Expand Up @@ -37,34 +37,36 @@ export class Processor implements Contracts.TransactionPool.Processor {
const excess: string[] = [];
let errors: { [id: string]: Contracts.TransactionPool.ProcessorError } | undefined = undefined;

const broadcastableTransactions: Interfaces.ITransaction[] = [];
const broadcastTransactions: Interfaces.ITransaction[] = [];

try {
for (let i = 0; i < data.length; i++) {
const transactionData = data[i];
const entryId = transactionData instanceof Buffer ? String(i) : transactionData.id ?? String(i);

try {
const transaction =
transactionData instanceof Buffer
? await this.getTransactionFromBuffer(transactionData)
: await this.getTransactionFromData(transactionData);
await this.pool.addTransaction(transaction);
accept.push(transactionData instanceof Buffer ? `${i}` : transactionData.id ?? `${i}`);
accept.push(entryId);

try {
await this.dynamicFeeMatcher.throwIfCannotBroadcast(transaction);
broadcastableTransactions.push(transaction);
broadcastTransactions.push(transaction);
broadcast.push(entryId);
} catch {}
} catch (error) {
invalid.push(transactionData instanceof Buffer ? `${i}` : transactionData.id ?? `${i}`);
invalid.push(entryId);

if (error instanceof Contracts.TransactionPool.PoolError) {
if (error.type === "ERR_EXCEEDS_MAX_COUNT") {
excess.push(transactionData instanceof Buffer ? `${i}` : transactionData.id ?? `${i}`);
excess.push(entryId);
}

if (!errors) errors = {};
errors[transactionData instanceof Buffer ? i : transactionData.id ?? i] = {
errors[entryId] = {
type: error.type,
message: error.message,
};
Expand All @@ -74,14 +76,10 @@ export class Processor implements Contracts.TransactionPool.Processor {
}
}
} finally {
if (this.transactionBroadcaster && broadcastableTransactions.length !== 0) {
if (this.transactionBroadcaster && broadcastTransactions.length !== 0) {
this.transactionBroadcaster
.broadcastTransactions(broadcastableTransactions)
.broadcastTransactions(broadcastTransactions)
.catch((error) => this.logger.error(error.stack));
for (const transaction of broadcastableTransactions) {
AppUtils.assert.defined<string>(transaction.id);
broadcast.push(transaction.id);
}
}
}

Expand Down

0 comments on commit 5815752

Please sign in to comment.