Skip to content

Commit 3342e96

Browse files
authored
Merge pull request #847 from tronprotocol/useTxRawHash
Use tx raw hash
2 parents b41b06e + 2d9eb95 commit 3342e96

File tree

5 files changed

+17
-13
lines changed

5 files changed

+17
-13
lines changed

src/main/java/org/tron/core/capsule/BlockCapsule.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ public Sha256Hash calcMerkleRoot() {
239239

240240
Vector<Sha256Hash> ids = transactionsList.stream()
241241
.map(TransactionCapsule::new)
242-
.map(TransactionCapsule::getHash)
242+
.map(TransactionCapsule::getMerkleHash)
243243
.collect(Collectors.toCollection(Vector::new));
244244

245245
return MerkleTree.getInstance().createTree(ids).getRoot().getHash();

src/main/java/org/tron/core/capsule/TransactionCapsule.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -180,12 +180,12 @@ public void createTransaction(com.google.protobuf.Message message, ContractType
180180
transaction = Transaction.newBuilder().setRawData(transactionBuilder.build()).build();
181181
}
182182

183-
public Sha256Hash getHash() {
183+
public Sha256Hash getMerkleHash() {
184184
byte[] transBytes = this.transaction.toByteArray();
185185
return Sha256Hash.of(transBytes);
186186
}
187187

188-
public Sha256Hash getRawHash() {
188+
private Sha256Hash getRawHash() {
189189
return Sha256Hash.of(this.transaction.getRawData().toByteArray());
190190
}
191191

@@ -363,7 +363,7 @@ public boolean validateSignature() throws ValidateSignatureException {
363363
}
364364

365365
public Sha256Hash getTransactionId() {
366-
return Sha256Hash.of(this.transaction.getRawData().toByteArray());
366+
return getRawHash();
367367
}
368368

369369
@Override

src/main/java/org/tron/core/db/api/index/TransactionIndex.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,24 @@
11
package org.tron.core.db.api.index;
22

3+
import static com.googlecode.cqengine.query.QueryFactory.attribute;
4+
35
import com.googlecode.cqengine.attribute.Attribute;
46
import com.googlecode.cqengine.attribute.SimpleAttribute;
57
import com.googlecode.cqengine.index.disk.DiskIndex;
68
import com.googlecode.cqengine.persistence.disk.DiskPersistence;
9+
import java.util.Objects;
10+
import java.util.stream.Collectors;
11+
import javax.annotation.PostConstruct;
712
import lombok.extern.slf4j.Slf4j;
813
import org.springframework.beans.factory.annotation.Autowired;
914
import org.springframework.beans.factory.annotation.Qualifier;
10-
import org.springframework.beans.factory.annotation.Value;
1115
import org.springframework.stereotype.Component;
1216
import org.tron.common.utils.ByteArray;
1317
import org.tron.core.capsule.TransactionCapsule;
1418
import org.tron.core.db.TronDatabase;
1519
import org.tron.core.db.common.WrappedByteArray;
1620
import org.tron.protos.Protocol.Transaction;
1721

18-
import javax.annotation.PostConstruct;
19-
import java.util.Objects;
20-
import java.util.stream.Collectors;
21-
22-
import static com.googlecode.cqengine.query.QueryFactory.attribute;
23-
2422
@Component
2523
@Slf4j
2624
public class TransactionIndex extends AbstractIndex<TransactionCapsule, Transaction> {
@@ -49,7 +47,7 @@ public void init() {
4947
protected void setAttribute() {
5048
Transaction_ID =
5149
attribute("transaction id",
52-
bytes -> new TransactionCapsule(getObject(bytes)).getRawHash().toString());
50+
bytes -> new TransactionCapsule(getObject(bytes)).getTransactionId().toString());
5351
OWNERS =
5452
attribute(String.class, "owner address",
5553
bytes -> getObject(bytes).getRawData().getContractList().stream()

src/main/java/org/tron/core/net/message/TransactionMessage.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.tron.core.net.message;
22

3+
import org.tron.common.utils.Sha256Hash;
34
import org.tron.core.capsule.TransactionCapsule;
45
import org.tron.protos.Protocol;
56
import org.tron.protos.Protocol.Transaction;
@@ -20,6 +21,11 @@ public TransactionMessage(Transaction trx) {
2021
this.data = trx.toByteArray();
2122
}
2223

24+
@Override
25+
public Sha256Hash getMessageId() {
26+
return getTransactionCapsule().getTransactionId();
27+
}
28+
2329
@Override
2430
public String toString() {
2531
return new StringBuilder().append(super.toString())

src/main/java/org/tron/core/net/node/NodeDelegateImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public synchronized LinkedList<Sha256Hash> handleBlock(BlockCapsule block, boole
6767
List<TransactionCapsule> trx = null;
6868
trx = block.getTransactions();
6969
return trx.stream()
70-
.map(TransactionCapsule::getHash)
70+
.map(TransactionCapsule::getTransactionId)
7171
.collect(Collectors.toCollection(LinkedList::new));
7272
} else {
7373
return null;

0 commit comments

Comments
 (0)