Skip to content

Commit bd9ed62

Browse files
committed
Merge branch 'tronprotocol:develop' into feature/add_grpc_api
2 parents d535eb2 + 3005246 commit bd9ed62

17 files changed

Lines changed: 412 additions & 69 deletions

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,3 +56,4 @@ Wallet
5656
/vm_trace/
5757

5858
/framework/propPath
59+
.cache

framework/src/main/java/org/tron/core/net/messagehandler/TransactionsMsgHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,8 @@ private void handleSmartContract() {
116116
}
117117

118118
private void handleTransaction(PeerConnection peer, TransactionMessage trx) {
119-
if (peer.isDisconnect()) {
120-
logger.warn("Drop trx {} from {}, peer is disconnect", trx.getMessageId(),
119+
if (peer.isBadPeer()) {
120+
logger.warn("Drop trx {} from {}, peer is bad peer", trx.getMessageId(),
121121
peer.getInetAddress());
122122
return;
123123
}
@@ -133,6 +133,7 @@ private void handleTransaction(PeerConnection peer, TransactionMessage trx) {
133133
logger.warn("Trx {} from peer {} process failed. type: {}, reason: {}",
134134
trx.getMessageId(), peer.getInetAddress(), e.getType(), e.getMessage());
135135
if (e.getType().equals(TypeEnum.BAD_TRX)) {
136+
peer.setBadPeer(true);
136137
peer.disconnect(ReasonCode.BAD_TX);
137138
}
138139
} catch (Exception e) {

framework/src/main/java/org/tron/core/net/peer/PeerConnection.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,10 @@ public class PeerConnection {
7171
@Getter
7272
private volatile boolean fetchAble;
7373

74+
@Setter
75+
@Getter
76+
private volatile boolean isBadPeer;
77+
7478
@Getter
7579
@Setter
7680
private ByteString address;
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package org.tron.core.services.interfaceOnPBFT.http;
2+
3+
import javax.servlet.http.HttpServletRequest;
4+
import javax.servlet.http.HttpServletResponse;
5+
import lombok.extern.slf4j.Slf4j;
6+
import org.springframework.beans.factory.annotation.Autowired;
7+
import org.springframework.stereotype.Component;
8+
import org.tron.core.services.http.GetBandwidthPricesServlet;
9+
import org.tron.core.services.interfaceOnPBFT.WalletOnPBFT;
10+
11+
@Component
12+
@Slf4j(topic = "API")
13+
public class GetBandwidthPricesOnPBFTServlet extends GetBandwidthPricesServlet {
14+
15+
@Autowired
16+
private WalletOnPBFT walletOnPBFT;
17+
18+
@Override
19+
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
20+
walletOnPBFT.futureGet(() -> super.doGet(request, response));
21+
}
22+
23+
@Override
24+
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
25+
walletOnPBFT.futureGet(() -> super.doPost(request, response));
26+
}
27+
}

framework/src/main/java/org/tron/core/services/interfaceOnPBFT/http/GetEnergyPricesOnPBFTServlet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,19 @@
88
import org.tron.core.services.http.GetEnergyPricesServlet;
99
import org.tron.core.services.interfaceOnPBFT.WalletOnPBFT;
1010

11-
1211
@Component
1312
@Slf4j(topic = "API")
1413
public class GetEnergyPricesOnPBFTServlet extends GetEnergyPricesServlet {
1514

1615
@Autowired
1716
private WalletOnPBFT walletOnPBFT;
1817

18+
@Override
1919
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
2020
walletOnPBFT.futureGet(() -> super.doGet(request, response));
2121
}
2222

23+
@Override
2324
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
2425
walletOnPBFT.futureGet(() -> super.doPost(request, response));
2526
}

framework/src/main/java/org/tron/core/services/interfaceOnPBFT/http/PBFT/HttpApiOnPBFTService.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.tron.core.services.interfaceOnPBFT.http.GetAssetIssueListByNameOnPBFTServlet;
2323
import org.tron.core.services.interfaceOnPBFT.http.GetAssetIssueListOnPBFTServlet;
2424
import org.tron.core.services.interfaceOnPBFT.http.GetAvailableUnfreezeCountOnPBFTServlet;
25+
import org.tron.core.services.interfaceOnPBFT.http.GetBandwidthPricesOnPBFTServlet;
2526
import org.tron.core.services.interfaceOnPBFT.http.GetBlockByIdOnPBFTServlet;
2627
import org.tron.core.services.interfaceOnPBFT.http.GetBlockByLatestNumOnPBFTServlet;
2728
import org.tron.core.services.interfaceOnPBFT.http.GetBlockByLimitNextOnPBFTServlet;
@@ -156,6 +157,8 @@ public class HttpApiOnPBFTService implements Service {
156157
@Autowired
157158
private GetBurnTrxOnPBFTServlet getBurnTrxOnPBFTServlet;
158159
@Autowired
160+
private GetBandwidthPricesOnPBFTServlet getBandwidthPricesOnPBFTServlet;
161+
@Autowired
159162
private GetEnergyPricesOnPBFTServlet getEnergyPricesOnPBFTServlet;
160163

161164
@Autowired
@@ -258,6 +261,8 @@ public void start() {
258261
"/isshieldedtrc20contractnotespent");
259262
context.addServlet(new ServletHolder(getBurnTrxOnPBFTServlet),
260263
"/getburntrx");
264+
context.addServlet(new ServletHolder(getBandwidthPricesOnPBFTServlet),
265+
"/getbandwidthprices");
261266
context.addServlet(new ServletHolder(getEnergyPricesOnPBFTServlet),
262267
"/getenergyprices");
263268
context.addServlet(new ServletHolder(getBlockOnPBFTServlet),
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package org.tron.core.services.interfaceOnSolidity.http;
2+
3+
import javax.servlet.http.HttpServletRequest;
4+
import javax.servlet.http.HttpServletResponse;
5+
import lombok.extern.slf4j.Slf4j;
6+
import org.springframework.beans.factory.annotation.Autowired;
7+
import org.springframework.stereotype.Component;
8+
import org.tron.core.services.http.GetBandwidthPricesServlet;
9+
import org.tron.core.services.interfaceOnSolidity.WalletOnSolidity;
10+
11+
@Component
12+
@Slf4j(topic = "API")
13+
public class GetBandwidthPricesOnSolidityServlet extends GetBandwidthPricesServlet {
14+
15+
@Autowired
16+
private WalletOnSolidity walletOnSolidity;
17+
18+
@Override
19+
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
20+
walletOnSolidity.futureGet(() -> super.doGet(request, response));
21+
}
22+
23+
@Override
24+
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
25+
walletOnSolidity.futureGet(() -> super.doPost(request, response));
26+
}
27+
}
28+

framework/src/main/java/org/tron/core/services/interfaceOnSolidity/http/GetEnergyPricesOnSolidityServlet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,19 @@
88
import org.tron.core.services.http.GetEnergyPricesServlet;
99
import org.tron.core.services.interfaceOnSolidity.WalletOnSolidity;
1010

11-
1211
@Component
1312
@Slf4j(topic = "API")
1413
public class GetEnergyPricesOnSolidityServlet extends GetEnergyPricesServlet {
1514

1615
@Autowired
1716
private WalletOnSolidity walletOnSolidity;
1817

18+
@Override
1919
protected void doGet(HttpServletRequest request, HttpServletResponse response) {
2020
walletOnSolidity.futureGet(() -> super.doGet(request, response));
2121
}
2222

23+
@Override
2324
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
2425
walletOnSolidity.futureGet(() -> super.doPost(request, response));
2526
}

framework/src/main/java/org/tron/core/services/interfaceOnSolidity/http/solidity/HttpApiOnSolidityService.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.tron.core.services.interfaceOnSolidity.http.GetAssetIssueListByNameOnSolidityServlet;
2323
import org.tron.core.services.interfaceOnSolidity.http.GetAssetIssueListOnSolidityServlet;
2424
import org.tron.core.services.interfaceOnSolidity.http.GetAvailableUnfreezeCountOnSolidityServlet;
25+
import org.tron.core.services.interfaceOnSolidity.http.GetBandwidthPricesOnSolidityServlet;
2526
import org.tron.core.services.interfaceOnSolidity.http.GetBlockByIdOnSolidityServlet;
2627
import org.tron.core.services.interfaceOnSolidity.http.GetBlockByLatestNumOnSolidityServlet;
2728
import org.tron.core.services.interfaceOnSolidity.http.GetBlockByLimitNextOnSolidityServlet;
@@ -168,6 +169,8 @@ public class HttpApiOnSolidityService implements Service {
168169
@Autowired
169170
private GetMarketPairListOnSolidityServlet getMarketPairListOnSolidityServlet;
170171
@Autowired
172+
private GetBandwidthPricesOnSolidityServlet getBandwidthPricesOnSolidityServlet;
173+
@Autowired
171174
private GetEnergyPricesOnSolidityServlet getEnergyPricesOnSolidityServlet;
172175

173176
@Autowired
@@ -290,6 +293,8 @@ public void start() {
290293
context.addServlet(new ServletHolder(getRewardServlet), "/walletsolidity/getReward");
291294
context
292295
.addServlet(new ServletHolder(getBurnTrxOnSolidityServlet), "/walletsolidity/getburntrx");
296+
context.addServlet(new ServletHolder(getBandwidthPricesOnSolidityServlet),
297+
"/walletsolidity/getbandwidthprices");
293298
context.addServlet(new ServletHolder(getEnergyPricesOnSolidityServlet),
294299
"/walletsolidity/getenergyprices");
295300

framework/src/test/java/org/tron/common/BaseTest.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,12 @@ public abstract class BaseTest {
3737
@AfterClass
3838
public static void destroy() {
3939
Args.clearParam();
40-
if (StringUtils.isNotEmpty(dbPath) && FileUtil.deleteDir(new File(dbPath))) {
41-
logger.info("Release resources successful.");
42-
} else {
43-
logger.info("Release resources failure.");
40+
if (StringUtils.isNotEmpty(dbPath)) {
41+
if (FileUtil.deleteDir(new File(dbPath))) {
42+
logger.info("Release resources successful.");
43+
} else {
44+
logger.info("Release resources failure.");
45+
}
4446
}
4547
}
4648

0 commit comments

Comments
 (0)