Skip to content

Commit 77f1861

Browse files
authored
Optimize ckb txs consumed by (#2877)
* optimize ckb tx inputs/outputs size * tx list includes consumed_by
1 parent a9b128c commit 77f1861

File tree

7 files changed

+9
-9
lines changed

7 files changed

+9
-9
lines changed

app/controllers/api/v1/address_dao_transactions_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ def show
99
raise Api::V1::Exceptions::AddressNotFoundError if address.is_a?(NullAddress)
1010

1111
includes = { bitcoin_annotation: [],
12-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
12+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
1313
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
1414

1515
ckb_dao_transactions = address.ckb_dao_transactions

app/controllers/api/v1/address_udt_transactions_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def show
1313
raise Api::V1::Exceptions::UdtNotFoundError if udt.blank?
1414

1515
includes = { bitcoin_annotation: [],
16-
cell_outputs: [:address, :deployed_contract, :udt_cell, :type_script, :bitcoin_vout, :lock_script],
16+
cell_outputs: [:address, :deployed_contract, :udt_cell, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
1717
cell_inputs: [:block, previous_cell_output: [:udt_cell, :address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
1818

1919
ckb_udt_transactions = address.ckb_udt_transactions(udt.id)

app/controllers/api/v1/block_transactions_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ def show
1919
end
2020

2121
includes = { bitcoin_annotation: [],
22-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
22+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
2323
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
2424

2525
if stale?(ckb_transactions)

app/controllers/api/v1/ckb_transactions_controller.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ def query
8585
end
8686

8787
includes = { bitcoin_annotation: [],
88-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
88+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
8989
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
9090

9191
ckb_transactions = ckb_transactions.includes(includes).select(:id, :tx_hash, :block_id, :tags,
@@ -147,7 +147,7 @@ def find_transaction
147147
witnesses: [],
148148
block: [:epoch_statistic],
149149
cell_dependencies: [:cell_output, :contract],
150-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
150+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
151151
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
152152

153153
@ckb_transaction = CkbTransaction.includes(includes).where(tx_hash: params[:id]).first

app/controllers/api/v1/contract_transactions_controller.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def show
2626
end
2727

2828
includes = { bitcoin_annotation: [],
29-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
29+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
3030
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
3131

3232
ckb_transactions = ckb_transactions

app/interactions/addresses/ckb_transactions.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,11 @@ def execute
4040
includes = if is_bitcoin
4141
{ bitcoin_annotation: [],
4242
bitcoin_transfers: [:bitcoin_transaction],
43-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, bitcoin_vout: [:bitcoin_address, :bitcoin_transaction]],
43+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, bitcoin_vout: [:bitcoin_address, :bitcoin_transaction, :consumed_by]],
4444
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, bitcoin_vout: [:bitcoin_address, :bitcoin_transaction]]]}
4545
else
4646
{ bitcoin_annotation: [],
47-
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script],
47+
cell_outputs: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
4848
cell_inputs: [:block, previous_cell_output: [:address, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
4949
end
5050

app/interactions/udts/ckb_transactions.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def execute
3131
end
3232

3333
includes = { bitcoin_annotation: [],
34-
cell_outputs: [:address, :deployed_contract, :udt_cell, :type_script, :bitcoin_vout, :lock_script],
34+
cell_outputs: [:address, :deployed_contract, :udt_cell, :type_script, :bitcoin_vout, :lock_script, :consumed_by],
3535
cell_inputs: [:block, previous_cell_output: [:address, :udt_cell, :deployed_contract, :type_script, :bitcoin_vout, :lock_script]]}
3636

3737
records = ckb_transactions

0 commit comments

Comments
 (0)