Use skip_preflight for CLI transactions

The preflight bank is set to max committment level, so we
wouldn't see previous txs with single confirmation.
This commit is contained in:
Leo 2020-08-22 10:43:29 +02:00
parent e0533c70c5
commit fbf6e17d3e
2 changed files with 10 additions and 5 deletions

View File

@ -18,6 +18,7 @@ use solana_clap_utils::{
};
use solana_client::client_error::ClientError;
use solana_client::{rpc_client::RpcClient, rpc_request::TokenAccountsFilter};
use solana_client::rpc_config::RpcSendTransactionConfig;
use solana_sdk::system_instruction::create_account;
use solana_sdk::{
commitment_config::CommitmentConfig,
@ -27,6 +28,7 @@ use solana_sdk::{
system_instruction,
transaction::Transaction,
};
use spl_token::{
self,
instruction::*,
@ -1059,7 +1061,7 @@ fn main() {
rpc_client: RpcClient::new(json_rpc_url),
owner,
fee_payer,
commitment_config: CommitmentConfig::max(),
commitment_config: CommitmentConfig::single(),
}
};
@ -1193,9 +1195,13 @@ fn main() {
// confirmation by default for better UX
let signature = config
.rpc_client
.send_and_confirm_transaction_with_spinner_and_commitment(
.send_and_confirm_transaction_with_spinner_and_config(
&transaction,
config.commitment_config,
RpcSendTransactionConfig {
// TODO: move to https://github.com/solana-labs/solana/pull/11792
skip_preflight: true,
},
)?;
println!("Signature: {}", signature);
}

View File

@ -18,7 +18,6 @@ bridge_address=Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o
initial_guardian=befa429d57cd18b7f8a4d91a2da9ab4af05d0fbe
chain_id_ethereum=2
# TODO: use proper confirmation level to avoid retries (except for faucet, which waits for devnet to come up)
retry () {
while ! $@; do
sleep 1
@ -41,10 +40,10 @@ account=$(cli create-account "$token" | grep 'Creating account' | awk '{ print $
echo "Created token account $account"
# Mint new tokens owned by our CLI account
retry cli mint "$token" 10000000000 "$account"
cli mint "$token" 10000000000 "$account"
# Do lock transactions <3
while : ; do
cli lock "$bridge_address" "$account" "$token" 10 "$chain_id_ethereum" "$RANDOM"
sleep 1
sleep 5
done