feat: add proxy monerod resiliency #6637
Merged
GitHub Actions / Test Results (Integration tests)
failed
Oct 17, 2024 in 0s
2 fail, 34 pass in 24m 37s
2 files 11 suites 24m 37s ⏱️
36 tests 34 ✅ 0 💤 2 ❌
38 runs 36 ✅ 0 💤 2 ❌
Results for commit 81f423b.
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 2, current status is 1, scanned txs 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 BASE1
✔ 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_MINED_UNCONFIRMED and not cancelled
Step failed:
Defined: tests/features/WalletFFI.feature:205:9
Matched: integration_tests/tests/steps/wallet_steps.rs:515:1
Step panicked. Captured output: Wallet RECEIVER failed to have at least num 1 txs with status 2, current status is 1, scanned txs 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: 18428,
base_dir: "/runner/_work/tari/tari/integration_tests/tests/temp/cucumber_12681/Wallet FFI/As a client I want to send a one-sided transaction/ffi_wallets/FFI_WALLET_port_18428",
wallet: Mutex {
data: Wallet {
ptr: 0x000055abe4c1e5a0,
liveness_data: Mutex {
data: {
"H44N5hyE1dVc2fCvCFEoquEZC7xrfxJpjZYkU4wwdLJXG98MvuHN8Pwe5FGpxZbQhc1m8W7rzJqiB1rQjA8BMjGMxuz": ContactsLivenessData {
ptr: 0x00007f3afc0d1f00,
},
"H4BxLCnVobHB7CViJcM5gQTg41iw5dSczQwU79PyBiCyAp1uzTRPvUUz92ZBivHJn9DkuKRfjKVf44PG8ARY3bNPPL5": ContactsLivenessData {
ptr: 0x00007f3cf01085b0,
},
},
poisoned: false,
..
},
balance: CachedBalance {
available: 2400000,
time_locked: 0,
pending_incoming: 0,
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: {
"H44N5hyE1dVc2fCvCFEoquEZC7xrfxJpjZYkU4wwdLJXG98MvuHN8Pwe5FGpxZbQhc1m8W7rzJqiB1rQjA8BMjGMxuz": [
1710290582286347324,
969172666712239593,
],
"H4H4ZVDFsWyvVgjvJN3Gq8gLQg3cdQpBMh39yhviHt5pEG471TzT2nroPvm2CT31E2d1XaiHXX6roHzXaNEJXjmimu9": [
1710290582286347324,
969172666712239593,
],
},
errors: [],
last_imported_tx_ids: [],
last_merge_miner_response: Null,
}
github-actions / Test Results (Integration tests)
1 out of 2 runs failed: Scenario: Transactions are propagated through a network: tests/features/Mempool.feature:8:3
artifacts/junit-cucumber/cucumber-output-junit.xml [took 11s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: transport error Caused by: 0: tcp connect error: Connection refused (os error 111) 1: tcp connect error: Connection refused (os error 111) 2: Connection refused (os error 111)
Scenario: Transactions are propagated through a network
✔ Given I have 8 seed nodes
✔ When I have a base node SENDER connected to all seed nodes
✔ When I have 8 base nodes connected to all seed nodes
✔ When I mine a block on SENDER with coinbase CB1
✔ When I mine 2 blocks on SENDER
✘ Then all nodes are at height 3
Step failed:
Defined: tests/features/Mempool.feature:18:5
Matched: integration_tests/tests/steps/node_steps.rs:180:1
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: transport error
Caused by:
0: tcp connect error: Connection refused (os error 111)
1: tcp connect error: Connection refused (os error 111)
2: Connection refused (os error 111)
Client {
base_nodes: {},
blocks: {},
miners: {},
ffi_wallets: {},
wallets: {},
merge_mining_proxies: {},
chat_clients: [],
transactions: {},
wallet_addresses: {},
utxos: {
"CB1": KeyManagerOutput {
version: V0,
value: MicroMinotari(
18462816327,
),
spending_key_id: Imported {
key: c6e29ebc8d0c9e89a4585e9aa0a745da38df1082d7b58465b25b600fb684904b,
},
features: OutputFeatures {
version: V0,
output_type: Coinbase,
maturity: 3,
coinbase_extra: MaxSizeBytes {
inner: [],
},
sidechain_feature: None,
range_proof_type: BulletProofPlus,
},
script: TariScript {
script: MaxSizeVec {
vec: [
PushPubKey(
aea4c423f9bbfaefad5230aaf341b6bbdeb29d91b68c48098a75732d877b585d,
),
],
_marker: PhantomData<tari_script::op_codes::Opcode>,
},
},
covenant: Covenant {
tokens: MaxSizeVec {
vec: [],
_marker: PhantomData<tari_core::covenants::token::CovenantToken>,
},
},
input_data: ExecutionStack {
items: [],
},
script_private_key_id: Imported {
key: aea4c423f9bbfaefad5230aaf341b6bbdeb29d91b68c48098a75732d877b585d,
},
sender_offset_public_key: fcf2445f1bddf0cb43be68ee972ef41f096aa5b65959505f137e86083ee9003d,
metadata_signature: CommitmentAndPublicKeySignature {
ephemeral_commitment: HomomorphicCommitment(
0606b5931223eebc065ca04553ac3c2358d044a4db8cbd22731d4ad14894c40b,
),
ephemeral_pubkey: b84bbb9c48753a9ba86da2f2ef52061e657a97cca23aa306c505ece12680816a,
u_a: RistrettoSecretKey(***),
u_x: RistrettoSecretKey(***),
u_y: RistrettoSecretKey(***),
},
script_lock_height: 0,
encrypted_data: EncryptedData {
data: MaxSizeBytes {
inner: [
159,
17,
167,
45,
81,
224,
100,
71,
164,
160,
255,
131,
188,
31,
59,
122,
29,
79,
67,
80,
74,
158,
135,
44,
111,
83,
157,
186,
2,
156,
214,
157,
245,
120,
164,
45,
99,
179,
209,
162,
79,
132,
35,
246,
39,
6,
62,
86,
103,
72,
158,
65,
110,
71,
110,
12,
249,
82,
119,
171,
196,
125,
116,
114,
189,
119,
144,
121,
185,
124,
232,
99,
251,
112,
129,
70,
112,
74,
130,
135,
],
},
},
minimum_value_promise: MicroMinotari(
0,
),
},
},
output_hash: None,
pre_image: None,
wallet_connected_to_base_node: {},
seed_nodes: [
"seed_node_0",
"seed_node_1",
"seed_node_2",
"seed_node_3",
"seed_node_4",
"seed_node_5",
"seed_node_6",
"seed_node_7",
],
wallet_tx_ids: {},
errors: [],
last_imported_tx_ids: [],
last_merge_miner_response: Null,
}
Check notice on line 0 in .github
github-actions / Test Results (Integration tests)
36 tests found
There are 36 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:105:3
Scenario: A message is sent directly between two FFI clients: tests/features/ChatFFI.feature:49:3
Scenario: A message receives a delivery receipt via FFI: tests/features/ChatFFI.feature:74:3
Scenario: A message receives a read receipt via FFI: tests/features/ChatFFI.feature:82:3
Scenario: A single message is fetched from FFI: tests/features/ChatFFI.feature:113: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: Callback for status change is received: tests/features/ChatFFI.feature:41:3
Scenario: Chat shuts down without any errors: tests/features/ChatFFI.feature:59:3
Scenario: Clear out mempool: tests/features/Mempool.feature:46:3
Scenario: Create burn transaction: tests/features/WalletTransactions.feature:412:3
Scenario: Fetches all addresses from FFI conversations: tests/features/ChatFFI.feature:91:3
Scenario: Node rolls back reorg on invalid block: tests/features/Reorgs.feature:63:3
Scenario: Reply to message: tests/features/ChatFFI.feature:64: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: 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: Verify gprc can create block with more than 1 coinbase: tests/features/BlockTemplate.feature:14:5
Scenario: Wallet imports pre_mine UTXO: tests/features/WalletTransactions.feature:170:3
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