Skip to content

Commit 76b9df0

Browse files
authored
Guibescos/simplify compute transaction size (#24)
* Fix poetry lock * Simplify compute transaction size
1 parent 7111ef5 commit 76b9df0

File tree

1 file changed

+2
-17
lines changed

1 file changed

+2
-17
lines changed

program_admin/util.py

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
from solana.publickey import PublicKey
55
from solana.rpc.async_api import AsyncClient
66
from solana.rpc.commitment import Commitment
7-
from solana.transaction import SIG_LENGTH, Transaction
8-
from solana.utils import shortvec_encoding as shortvec
7+
from solana.transaction import Transaction
98

109
from program_admin.types import (
1110
Network,
@@ -35,23 +34,9 @@ async def recent_blockhash(client: AsyncClient) -> Blockhash:
3534
def compute_transaction_size(transaction: Transaction) -> int:
3635
"""
3736
Returns the total over-the-wire size of a transaction
38-
39-
This is the same code from solana.transaction.Transaction.__serialize()
4037
"""
41-
payload = bytearray()
42-
signature_count = shortvec.encode_length(len(transaction.signatures))
43-
44-
payload.extend(signature_count)
45-
46-
for sig_pair in transaction.signatures:
47-
if sig_pair.signature:
48-
payload.extend(sig_pair.signature)
49-
else:
50-
payload.extend(bytearray(SIG_LENGTH))
51-
52-
payload.extend(transaction.serialize_message())
5338

54-
return len(payload)
39+
return len(transaction.serialize())
5540

5641

5742
def encode_product_metadata(data: Dict[str, str]) -> bytes:

0 commit comments

Comments
 (0)