From 1504f4473661b6ac5243fd844606b19c6fcb4eae Mon Sep 17 00:00:00 2001 From: axelsheva Date: Fri, 15 Nov 2019 14:54:38 +0200 Subject: [PATCH 1/4] Disable excess logs --- core/controller/peer.ts | 2 +- core/driver/socket/index.ts | 6 +++--- core/loader.ts | 1 - core/service/block.ts | 2 +- core/service/peer.ts | 4 ++-- shared/model/Peer/networkPeer.ts | 14 +++++++------- 6 files changed, 14 insertions(+), 15 deletions(-) diff --git a/core/controller/peer.ts b/core/controller/peer.ts index a501860f..9dafb2be 100644 --- a/core/controller/peer.ts +++ b/core/controller/peer.ts @@ -65,7 +65,7 @@ export class PeerController extends BaseController { @ON(ActionTypes.HEADERS_RECEIVE) headersReceive(data: PeerHeadersReceived) { - logger.debug(`[Controller][Peer][headersReceive] peer ${data.peerAddress.ip} connecting as ${data.type}`); + logger.trace(`[Controller][Peer][headersReceive] peer ${data.peerAddress.ip} connecting as ${data.type}`); const result = PeerService.add(data); if (result && data.type === PEER_SOCKET_TYPE.CLIENT) { const peer = PeerNetworkRepository.get(data.peerAddress); diff --git a/core/driver/socket/index.ts b/core/driver/socket/index.ts index 3fb0a289..27bc3529 100644 --- a/core/driver/socket/index.ts +++ b/core/driver/socket/index.ts @@ -74,7 +74,7 @@ export class Socket { connectPeer(peerAddress: PeerAddress, headers: SerializedFullHeaders): void { - logger.debug(`[SOCKET][connectPeer] connecting to ${peerAddressToString(peerAddress)}...`); + logger.trace(`[SOCKET][connectPeer] connecting to ${peerAddressToString(peerAddress)}...`); const ws: SocketIOClient.Socket = io( `ws://${peerAddressToString(peerAddress)}`, PEER_SOCKET_CLIENT_CONFIG @@ -82,7 +82,7 @@ export class Socket { ws.on(PEER_SOCKET_EVENTS.CONNECT, () => { - logger.debug(`[SOCKET][connectPeer] connected to ${peerAddressToString(peerAddress)}`); + logger.trace(`[SOCKET][connectPeer] connected to ${peerAddressToString(peerAddress)}`); ws.emit(PEER_SOCKET_EVENTS.HEADERS, createBufferObject(headers, SchemaName.FullHeaders)); ws.on(PEER_SOCKET_EVENTS.HEADERS, (response: Buffer) => { @@ -102,7 +102,7 @@ export class Socket { const peerHeaders = deserialize(response); - logger.debug(`[Driver][Socket][onHeadersReceive] ${type} ${peerAddress.ip}, ` + + logger.trace(`[Driver][Socket][onHeadersReceive] ${type} ${peerAddress.ip}, ` + `broadhash: ${peerHeaders.broadhash}, height: ${peerHeaders.height}, ` + `buffer size: ${response.length} byte`); diff --git a/core/loader.ts b/core/loader.ts index ef05783b..28ffbce0 100644 --- a/core/loader.ts +++ b/core/loader.ts @@ -1,6 +1,5 @@ import * as path from 'path'; import { QueryFile } from 'pg-promise'; -import { timeService as EskaTimeService } from 'eska-common'; import db from 'shared/driver/db'; import TransactionDispatcher from 'core/service/transaction'; diff --git a/core/service/block.ts b/core/service/block.ts index cf5b9cee..72969b1e 100644 --- a/core/service/block.ts +++ b/core/service/block.ts @@ -550,7 +550,7 @@ class BlockService implements IBlockService { ); const removedTransactions = TransactionPool.batchRemove(block.transactions); - logger.debug( + logger.trace( `[Service][Block][receiveBlock] removed transactions count: ${removedTransactions.length}` ); diff --git a/core/service/peer.ts b/core/service/peer.ts index 844ce37e..8f0620a4 100644 --- a/core/service/peer.ts +++ b/core/service/peer.ts @@ -64,7 +64,7 @@ export class PeerService { } remove(peerAddress: PeerAddress, checkMinPeerCount: boolean = true) { - logger.debug(`${LOG_PREFIX}[remove] ${peerAddressToString(peerAddress)}`); + logger.trace(`${LOG_PREFIX}[remove] ${peerAddressToString(peerAddress)}`); PeerMemoryRepository.remove(peerAddress); PeerNetworkRepository.remove(peerAddress); if (checkMinPeerCount && PeerMemoryRepository.count < config.CONSTANTS.PEERS_DISCOVER.MIN) { @@ -81,7 +81,7 @@ export class PeerService { if (checkQueue && SwapTransactionQueue.size && PeerNetworkRepository.count) { SwapTransactionQueue.process(); } - + let peers: Array = []; if (peerAddresses && isArray(peerAddresses)) { peers = PeerNetworkRepository.getManyByAddress(peerAddresses); diff --git a/shared/model/Peer/networkPeer.ts b/shared/model/Peer/networkPeer.ts index 6cb6a551..ffe2f1d2 100644 --- a/shared/model/Peer/networkPeer.ts +++ b/shared/model/Peer/networkPeer.ts @@ -26,7 +26,7 @@ export class NetworkPeer extends Peer { constructor(data: SerializedNetworkPeer) { super(data); - logger.debug(`[Peer][new peer] ${peerAddressToString(data.peerAddress)}`); + logger.trace(`[Peer][new peer] ${peerAddressToString(data.peerAddress)}`); this._isBanned = data.isBanned; this._socket = data.socket; @@ -38,7 +38,7 @@ export class NetworkPeer extends Peer { }); this._socket.on(PEER_SOCKET_EVENTS.DISCONNECT, (reason) => { - logger.debug(`[NetworkPeer][disconnect]: ${reason}`); + logger.trace(`[NetworkPeer][disconnect]: ${reason}`); this._socket.removeAllListeners(); if (reason !== 'client namespace disconnect') { messageON(ActionTypes.REMOVE_PEER, data.peerAddress); @@ -124,11 +124,11 @@ export class NetworkPeer extends Peer { disconnect(): void { this._socket.removeAllListeners(); - logger.debug(`[NetworkPeer][disconnect] ${this.peerAddress.ip}`); + logger.trace(`[NetworkPeer][disconnect] ${this.peerAddress.ip}`); if (this._socket.connected) { - logger.debug(`[NetworkPeer][disconnect] ${this.peerAddress.ip} was connected`); + logger.trace(`[NetworkPeer][disconnect] ${this.peerAddress.ip} was connected`); this._socket.disconnect(true); - logger.debug(`[NetworkPeer][disconnect] ${this.peerAddress.ip} has disconnected`); + logger.trace(`[NetworkPeer][disconnect] ${this.peerAddress.ip} has disconnected`); } } @@ -146,10 +146,10 @@ export class NetworkPeer extends Peer { } if (ALLOWED_BAN_PEER_METHODS.has(response.code) || !this._isBanned) { - logger.debug(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}], CODE: ${response.code}`); + logger.trace(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}], CODE: ${response.code}`); messageON(response.code, { data: response.data, peerAddress }); } else { - logger.debug(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}] CODE: ${response.code} ` + + logger.trace(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}] CODE: ${response.code} ` + +`try to broadcast, but it has been banned`); } } From 701b354a595a6534f2deb73ffdd56942875a200e Mon Sep 17 00:00:00 2001 From: axelsheva Date: Fri, 15 Nov 2019 14:56:21 +0200 Subject: [PATCH 2/4] Refactor vote service --- core/service/transaction/vote.ts | 34 ++++++++++++++++---------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/core/service/transaction/vote.ts b/core/service/transaction/vote.ts index 8cabce50..d09deef7 100644 --- a/core/service/transaction/vote.ts +++ b/core/service/transaction/vote.ts @@ -32,7 +32,7 @@ class TransactionVoteService implements IAssetService { votes: trs.asset.votes.map((vote: string) => `${trs.asset.type}${vote}`), reward: totals.reward || 0, unstake: totals.unstake || 0, - airdropReward: airdropReward + airdropReward, }; } @@ -102,12 +102,12 @@ class TransactionVoteService implements IAssetService { errors.push(...votesErrors); } - const uniqVotes = trs.asset.votes.reduce((acc: Array, vote: string) => { - const slicedVote: string = vote.slice(1); - if (acc.indexOf(slicedVote) === -1) { - acc.push(slicedVote); + const uniqVotes = trs.asset.votes.reduce((publicKeys: Array, vote: string) => { + const publicKey: string = vote.slice(1); + if (publicKeys.indexOf(publicKey) === -1) { + publicKeys.push(publicKey); } - return acc; + return publicKeys; }, []); if (trs.asset.votes.length > uniqVotes.length) { @@ -211,16 +211,16 @@ class TransactionVoteService implements IAssetService { const isDownVote = trs.asset.votes[0][0] === '-'; const votes = trs.asset.votes.map(vote => vote.substring(1)); if (isDownVote) { - votes.reduce((acc: Array, delegatePublicKey: string) => { - const targetAccount: Account = AccountRepo.getByPublicKey(delegatePublicKey); - targetAccount.delegate.votes--; - acc.splice(acc.indexOf(delegatePublicKey), 1); - return acc; + votes.reduce((publicKeys: Array, delegatePublicKey: string) => { + const delegateAccount: Account = AccountRepo.getByPublicKey(delegatePublicKey); + delegateAccount.delegate.votes--; + publicKeys.splice(publicKeys.indexOf(delegatePublicKey), 1); + return publicKeys; }, sender.votes); } else { votes.forEach((delegatePublicKey) => { - const targetAccount: Account = AccountRepo.getByPublicKey(delegatePublicKey); - targetAccount.delegate.votes++; + const delegateAccount: Account = AccountRepo.getByPublicKey(delegatePublicKey); + delegateAccount.delegate.votes++; }); sender.votes.push(...votes); } @@ -251,16 +251,16 @@ class TransactionVoteService implements IAssetService { sender.votes.push(...votes); if (!senderOnly) { votes.forEach((newVote) => { - const targetAccount: Account = AccountRepo.getByPublicKey(newVote); - targetAccount.delegate.votes++; + const delegateAccount: Account = AccountRepo.getByPublicKey(newVote); + delegateAccount.delegate.votes++; }); } } else { votes.forEach((vote: PublicKey) => { sender.votes.splice(sender.votes.indexOf(vote), 1); if (!senderOnly) { - const targetAccount: Account = AccountRepo.getByPublicKey(vote); - targetAccount.delegate.votes--; + const delegateAccount: Account = AccountRepo.getByPublicKey(vote); + delegateAccount.delegate.votes--; } }); } From cee3a0269e9995eb9da1fd0eff8023ed44a742de Mon Sep 17 00:00:00 2001 From: axelsheva Date: Fri, 15 Nov 2019 14:57:19 +0200 Subject: [PATCH 3/4] Refactor block service --- core/service/block.ts | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/core/service/block.ts b/core/service/block.ts index 72969b1e..1145da88 100644 --- a/core/service/block.ts +++ b/core/service/block.ts @@ -420,11 +420,12 @@ class BlockService implements IBlockService { } if (verify) { - const resultCheckTransaction: ResponseEntity = this.checkTransaction(trs, sender); - if (!resultCheckTransaction.success) { - errors.push(...resultCheckTransaction.errors); + const verifyResult: ResponseEntity = TransactionDispatcher.verifyUnconfirmed(trs, sender); + if (!verifyResult.success) { + errors.push(...verifyResult.errors); logger.error( - `[Service][Block][checkTransactionsAndApplyUnconfirmed][error] ${errors.join('. ')}. `, + `[Service][Block][checkTransactionsAndApplyUnconfirmed] ` + + `${errors.join('. ')}. trs id: ${trs.id}`, ); i--; break; @@ -450,20 +451,6 @@ class BlockService implements IBlockService { return new ResponseEntity({ errors }); } - private checkTransaction(trs: Transaction, sender: Account): ResponseEntity { - const validateResult = TransactionDispatcher.validate(trs); - if (!validateResult.success) { - return new ResponseEntity({ errors: [...validateResult.errors, 'checkTransaction'] }); - } - - const verifyResult: ResponseEntity = TransactionDispatcher.verifyUnconfirmed(trs, sender); - if (!verifyResult.success) { - return new ResponseEntity({ errors: [...verifyResult.errors, 'checkTransaction'] }); - } - - return new ResponseEntity(); - } - private async applyBlock( block: Block, broadcast: boolean, From 52c1f8361eb810f0227249bb76fabeec364e5a4e Mon Sep 17 00:00:00 2001 From: axelsheva Date: Fri, 15 Nov 2019 15:03:59 +0200 Subject: [PATCH 4/4] Fix issues --- core/controller/peer.ts | 2 +- shared/model/Peer/networkPeer.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/core/controller/peer.ts b/core/controller/peer.ts index 9dafb2be..a501860f 100644 --- a/core/controller/peer.ts +++ b/core/controller/peer.ts @@ -65,7 +65,7 @@ export class PeerController extends BaseController { @ON(ActionTypes.HEADERS_RECEIVE) headersReceive(data: PeerHeadersReceived) { - logger.trace(`[Controller][Peer][headersReceive] peer ${data.peerAddress.ip} connecting as ${data.type}`); + logger.debug(`[Controller][Peer][headersReceive] peer ${data.peerAddress.ip} connecting as ${data.type}`); const result = PeerService.add(data); if (result && data.type === PEER_SOCKET_TYPE.CLIENT) { const peer = PeerNetworkRepository.get(data.peerAddress); diff --git a/shared/model/Peer/networkPeer.ts b/shared/model/Peer/networkPeer.ts index ffe2f1d2..23c9405e 100644 --- a/shared/model/Peer/networkPeer.ts +++ b/shared/model/Peer/networkPeer.ts @@ -137,7 +137,7 @@ export class NetworkPeer extends Peer { if (!Buffer.isBuffer(str)) { return; } - + const response = deserialize(str); if (!ALLOWED_METHODS.has(response.code) && config.NODE_ENV_IN !== NODE_ENV_ENUM.TEST) { @@ -149,7 +149,7 @@ export class NetworkPeer extends Peer { logger.trace(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}], CODE: ${response.code}`); messageON(response.code, { data: response.data, peerAddress }); } else { - logger.trace(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}] CODE: ${response.code} ` + + logger.debug(`[SOCKET][ON_PEER_BROADCAST][${this.peerAddress.ip}] CODE: ${response.code} ` + +`try to broadcast, but it has been banned`); } }