feat: optimize transaction validation db queries #4117
GitHub Actions / Test Results (Integration tests)
failed
Mar 19, 2024 in 0s
1 fail, 31 pass in 24m 32s
Annotations
github-actions / Test Results (Integration tests)
1 out of 2 runs failed: Scenario: As a client I want to send a one-sided transaction: tests/features/WalletFFI.feature:175:5
artifacts/junit-ffi-cucumber/cucumber-output-junit.xml [took 9m 2s]
Raw output
Step panicked. Captured output: Wallet RECEIVER failed to have at least num 1 txs with status 8, current status is 0
Scenario: As a client I want to send a one-sided transaction
✔ Given I have a seed node SEED
✔ When I have a base node BASE1 connected to all seed nodes
✔ When I have wallet SENDER connected to base node BASE1
✔ And I have a ffi wallet FFI_WALLET connected to base node SEED
✔ When I have wallet RECEIVER connected to base node BASE1
✔ When I add contact with alias ALIAS1 and address of SENDER to ffi wallet FFI_WALLET
✔ When I add contact with alias ALIAS2 and address of RECEIVER to ffi wallet FFI_WALLET
✔ When I have mining node MINER connected to base node BASE1 and wallet SENDER
✔ When mining node MINER mines 10 blocks
✔ Then all nodes are at height 10
✔ Then I wait for wallet SENDER to have at least 129239250000 uT
✔ And I send 2400000 uT from wallet SENDER to wallet FFI_WALLET at fee 5
✔ And I send 2400000 uT from wallet SENDER to wallet FFI_WALLET at fee 5
✔ Then wallet SENDER has at least 2 transactions that are all TRANSACTION_STATUS_BROADCAST and not cancelled
✔ Then ffi wallet FFI_WALLET detects AT_LEAST 2 ffi transactions to be TRANSACTION_STATUS_BROADCAST
✔ When mining node MINER mines 10 blocks
✔ Then all nodes are at height 20
✔ Then ffi wallet FFI_WALLET detects AT_LEAST 2 ffi transactions to be TRANSACTION_STATUS_MINED
✔ Then I wait for ffi wallet FFI_WALLET to have at least 4000000 uT
✔ And I send 1000000 uT from ffi wallet FFI_WALLET to wallet RECEIVER at fee 5 via one-sided transactions
✔ Then ffi wallet FFI_WALLET detects AT_LEAST 3 ffi transactions to be TRANSACTION_STATUS_BROADCAST
✔ When mining node MINER mines 2 blocks
✔ Then all nodes are at height 22
✘ Then wallet RECEIVER has at least 1 transactions that are all TRANSACTION_STATUS_ONE_SIDED_UNCONFIRMED and not cancelled
Step failed:
Defined: tests/features/WalletFFI.feature:205:9
Matched: integration_tests/tests/steps/wallet_steps.rs:514:1
Step panicked. Captured output: Wallet RECEIVER failed to have at least num 1 txs with status 8, current status is 0
Client {
base_nodes: {},
blocks: {},
miners: {
"MINER": MinerProcess {
name: "MINER",
base_node_name: "BASE1",
wallet_name: "SENDER",
mine_until_height: 100000,
stealth: false,
},
},
ffi_wallets: {
"FFI_WALLET": WalletFFI {
name: "FFI_WALLET",
port: 18345,
base_dir: "/runner/_work/tari/tari/integration_tests/tests/temp/cucumber_6425/Wallet FFI/As a client I want to send a one-sided transaction/ffi_wallets/FFI_WALLET_port_18345",
wallet: Mutex {
data: Wallet {
ptr: 0x000055aba2268a00,
liveness_data: Mutex {
data: {
"0a4165da0963a33d725f88dcb09030c678943abd0c09b89daefaf0529c43323fb1": ContactsLivenessData {
ptr: 0x00007faf3401c350,
},
},
poisoned: false,
..
},
balance: CachedBalance {
available: 2400000,
time_locked: 0,
pending_incoming: 1399330,
pending_outgoing: 2400000,
},
},
poisoned: false,
..
},
},
},
wallets: {},
merge_mining_proxies: {},
chat_clients: [],
transactions: {},
wallet_addresses: {},
utxos: {},
output_hash: None,
pre_image: None,
wallet_connected_to_base_node: {
"SENDER": "BASE1",
"RECEIVER": "BASE1",
},
seed_nodes: [
"SEED",
],
wallet_tx_ids: {
"0a4165da0963a33d725f88dcb09030c678943abd0c09b89daefaf0529c43323fb1": [
14358649308687688009,
8439352751135709011,
],
"ba9689b8c2eabf961277dec2a85f9ba7a54b15a9e23d4f7f39164e724f60d532c6": [
14358649308687688009,
8439352751135709011,
],
},
errors: [],
last_imported_tx_ids: [],
last_merge_miner_response: Null,
}
Check notice on line 0 in .github
github-actions / Test Results (Integration tests)
32 tests found
There are 32 tests, see "Raw output" for the full list of tests.
Raw output
Scenario: A message is propagated between clients via 3rd party: tests/features/ChatFFI.feature:7:3
Scenario: A message is propagated between side loaded chat and client via 3rd party: tests/features/ChatFFI.feature:109:3
Scenario: A message receives a delivery receipt via FFI: tests/features/ChatFFI.feature:78:3
Scenario: A message receives a read receipt via FFI: tests/features/ChatFFI.feature:86:3
Scenario: As a client I want to receive a one-sided transaction: tests/features/WalletFFI.feature:212:5
Scenario: As a client I want to receive contact liveness events: tests/features/WalletFFI.feature:73:5
Scenario: As a client I want to retrieve a list of transactions I have made and received: tests/features/WalletFFI.feature:96:5
Scenario: As a client I want to retrieve the mnemonic word list for a given language: tests/features/WalletFFI.feature:24:5
Scenario: As a client I want to send a one-sided transaction: tests/features/WalletFFI.feature:175:5
Scenario: As a wallet I want to submit a transaction: tests/features/WalletQuery.feature:18:3
Scenario: As a wallet send to a wallet connected to a different base node: tests/features/WalletTransfer.feature:9:3
Scenario: Callback for delivery confirmation received: tests/features/ChatFFI.feature:22:3
Scenario: Callback for new message received: tests/features/ChatFFI.feature:14:3
Scenario: Callback for read confirmation received: tests/features/ChatFFI.feature:31:3
Scenario: Chat shuts down without any errors: tests/features/ChatFFI.feature:63:3
Scenario: Clear out mempool: tests/features/Mempool.feature:46:3
Scenario: Create burn transaction: tests/features/WalletTransactions.feature:411:3
Scenario: Fetches all addresses from FFI conversations: tests/features/ChatFFI.feature:95:3
Scenario: Node rolls back reorg on invalid block: tests/features/Reorgs.feature:63:3
Scenario: Reply to message: tests/features/ChatFFI.feature:68:3
Scenario: Simple block sync: tests/features/Sync.feature:26:3
Scenario: Simple propagation: tests/features/Propagation.feature:26:3
Scenario: Simple reorg to stronger chain: tests/features/Reorgs.feature:8:3
Scenario: Simple reorg with burned output: tests/features/Reorgs.feature:33:3
Scenario: Sync burned output: tests/features/Sync.feature:34:3
Scenario: Syncing node while also mining before tip sync: tests/features/Sync.feature:142:5
Scenario: Transactions are propagated through a network: tests/features/Mempool.feature:8:3
Scenario: Verify UTXO and kernel MMR size in header: tests/features/BlockTemplate.feature:8:1
Scenario: Wallet recovery with connected base node staying online: tests/features/WalletRecovery.feature:8:5
Scenario: Wallet sending and receiving one-sided transactions: tests/features/WalletTransactions.feature:8:3
Scenario: When a new node joins the network, it receives all peers: tests/features/Sync.feature:77:3
Scenario: Zero-conf transactions: tests/features/Mempool.feature:124:3
Loading