Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Econia transactions in transaction generator #11625

Open
wants to merge 110 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
97bf774
Add econia transactions to transaction generator workflow
vusirikala Jan 30, 2024
64abbd8
Changes when trying to debug the errors
vusirikala Jan 31, 2024
f0d08e8
Fixing errors
vusirikala Jan 31, 2024
b8635b9
Fixing errors
vusirikala Feb 1, 2024
07f5b5c
Merge branch 'main' into satya/econia-tests
vusirikala Feb 8, 2024
c181974
Minor changes
vusirikala Feb 9, 2024
aeee69f
Merge branch 'main' into satya/econia-tests
vusirikala Feb 12, 2024
3d5b6fb
Still working on adding more econia workflows
vusirikala Feb 12, 2024
bf3cbfb
Able to compile now
vusirikala Feb 12, 2024
41adba3
Second econia workflow is working now
vusirikala Feb 13, 2024
1e53f93
Adapting to multiple markets. Giving errors
vusirikala Feb 14, 2024
997743a
A few fixes
vusirikala Feb 14, 2024
2f239ed
Fixing SEQUENCE_NUMBER_TOO_NEW error
vusirikala Feb 15, 2024
fdf83a8
Minor fixes
vusirikala Feb 15, 2024
81240d3
econia flow details
igor-aptos Feb 26, 2024
167598a
Add multiple market support
vusirikala Feb 27, 2024
1c92a97
use quote_coin_type function
vusirikala Feb 27, 2024
52dae22
Minor fixes
vusirikala Feb 27, 2024
376a325
module publish
vusirikala Feb 27, 2024
b0be65d
Update basic workflow in module_simple.rs
vusirikala Feb 28, 2024
2304f55
Fixing errors
vusirikala Feb 28, 2024
edde8fd
Uncommenting tests
vusirikala Feb 28, 2024
0cb3593
Merge branch 'main' into satya/econia-tests
vusirikala Feb 28, 2024
ae98a3d
Update module_simple.rs
igor-aptos Feb 28, 2024
45659d0
Minor fix
vusirikala Feb 28, 2024
1bd1246
Having each market have its own user pool
vusirikala Feb 29, 2024
769fcf9
Reset to AccountPoolCreator
vusirikala Feb 29, 2024
86472c9
Merge branch 'main' into satya/econia-tests
vusirikala Mar 1, 2024
730fa11
Add ability to reuse accounts
vusirikala Mar 1, 2024
e4fb5bc
Minor fix
vusirikala Mar 1, 2024
ab458fd
Minor fix
vusirikala Mar 1, 2024
4075b7e
Removed a lot of move code to fit the transaction size
vusirikala Mar 2, 2024
be1de26
Changing progress type to WhenDone
vusirikala Mar 4, 2024
d337967
Changing to WhenDone
vusirikala Mar 4, 2024
68c3715
Reducing users from 500K to 50K
vusirikala Mar 4, 2024
ef174e4
Reducing users from 50K to 50
vusirikala Mar 5, 2024
fa33ecb
Added an info statement
vusirikala Mar 6, 2024
43a8310
Add info statement
vusirikala Mar 6, 2024
639abd6
Add info statement
vusirikala Mar 6, 2024
6114bf4
Add info statement
vusirikala Mar 6, 2024
92dd68d
Add sleep statement
vusirikala Mar 6, 2024
2c83b68
Updated timer
vusirikala Mar 6, 2024
94cb8c9
Increases users to 50000
vusirikala Mar 6, 2024
e0bc215
Increased users to 600k and delay to 20 seconds
vusirikala Mar 6, 2024
1d7f423
Increased users to 600k and delay to 20 seconds
vusirikala Mar 6, 2024
e067db2
Sleep for 60 seconds between stages
vusirikala Mar 6, 2024
501c7ef
Reduce users from 600K to 100K
vusirikala Mar 8, 2024
381c965
Adding some print statements
vusirikala Mar 8, 2024
146a3f8
Running register_market transaction reliably
vusirikala Mar 9, 2024
b973405
Removing print statements and increase users to 600K
vusirikala Mar 9, 2024
df62ac0
Merge branch 'main' into satya/econia-tests
vusirikala Mar 9, 2024
c95b0fa
rust lint
vusirikala Mar 9, 2024
4d466ef
rust lint
vusirikala Mar 9, 2024
c0cb7cf
Support 104 markets
vusirikala Mar 11, 2024
592db18
Fix econia order generator
vusirikala Mar 12, 2024
f147ab7
fixing seed for publishing packages
vusirikala Mar 12, 2024
2c5deff
fixing seed for publishing packages
vusirikala Mar 12, 2024
c13776d
adding a print statement
vusirikala Mar 12, 2024
3ce924c
Fix txn_counter in econia order generator
vusirikala Mar 12, 2024
c17f9bd
Minor change
vusirikala Mar 12, 2024
25a85f6
Minor typo
vusirikala Mar 12, 2024
dc59dcf
Add ability to not republish package
vusirikala Mar 12, 2024
7eed8d6
Minor typo
vusirikala Mar 12, 2024
4f584d7
Minor typo
vusirikala Mar 12, 2024
294865f
change seed
vusirikala Mar 12, 2024
7afe9e3
Sent base_txn_count to 2*num_users
vusirikala Mar 12, 2024
995bfdc
Display events in executor benchmark
vusirikala Mar 13, 2024
b49720f
use NO_RESTRICTION
vusirikala Mar 13, 2024
ae03075
Change module seed
vusirikala Mar 13, 2024
0e9c55c
Change module seed
vusirikala Mar 13, 2024
68fee51
Add Econia real
vusirikala Mar 15, 2024
88c2986
Add cancel orders
vusirikala Mar 15, 2024
c744107
Change args
vusirikala Mar 18, 2024
e4e7017
Change args
vusirikala Mar 18, 2024
2bbbcee
Minor changes
vusirikala Mar 20, 2024
0387d19
Still changing
vusirikala Mar 20, 2024
ccd2c93
Add market makers
vusirikala Mar 22, 2024
a30da3b
Make the workload look real
vusirikala Mar 22, 2024
68830d6
Minor fix
vusirikala Mar 22, 2024
5485cc9
Minor fix
vusirikala Mar 22, 2024
d8f5d01
Minor fix
vusirikala Mar 22, 2024
967b80f
Adding some print statements for debugging
vusirikala Mar 22, 2024
a0a354f
Adding print statement
vusirikala Mar 25, 2024
ecfbc00
Add println statements
vusirikala Mar 25, 2024
2b447aa
Add EconiaMarketOrderGenerator
vusirikala Mar 26, 2024
13a1b89
Changing to WhenDone
vusirikala Mar 26, 2024
ad0c992
Minor fix
vusirikala Mar 27, 2024
5fca313
Change random seed
vusirikala Mar 27, 2024
955c7e6
Increasing limit order size
vusirikala Mar 27, 2024
ea5d9cd
Increase limit order size
vusirikala Mar 27, 2024
a34f0c2
Depositing more coins
vusirikala Mar 27, 2024
6d03418
Merge branch 'main' into satya/econia-tests
vusirikala Sep 23, 2024
47ea5b5
Fixing errors from rebasing
vusirikala Sep 23, 2024
2ba0ae8
Fixing errors
vusirikala Sep 23, 2024
f6c552b
Merge branch 'main' into satya/econia-tests
vusirikala Oct 15, 2024
5c2f6d2
Merge branch 'main' into satya/econia-tests
vusirikala Nov 7, 2024
5ff16c6
Minor changes
vusirikala Oct 15, 2024
9cb730e
Fixing errors
vusirikala Nov 7, 2024
c61305d
Add multiple forge tests
vusirikala Nov 7, 2024
9473690
Increasing txn size limit
vusirikala Nov 7, 2024
8cc09ed
Setting create accounts flag to true
vusirikala Nov 7, 2024
d03e9dc
Committing what I have
vusirikala Nov 7, 2024
338877d
Switched to WhenDoneDefault
vusirikala Nov 19, 2024
648372d
duration
vusirikala Nov 19, 2024
3ca32c4
Increase num users
vusirikala Nov 19, 2024
4f3a34a
Committing what I have
vusirikala Nov 25, 2024
348a6a2
Use Bucketed account pool
vusirikala Nov 26, 2024
b90d69e
Change default transaction type:
vusirikala Nov 26, 2024
bb50ed1
Add info statements
vusirikala Nov 26, 2024
4f8b15e
Fix
vusirikala Nov 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ crate::gas_schedule::macros::define_gas_parameters!(
[
max_transaction_size_in_bytes: NumBytes,
"max_transaction_size_in_bytes",
64 * 1024
90 * 1024
],
[
max_transaction_size_in_bytes_gov: NumBytes,
Expand Down
6 changes: 4 additions & 2 deletions crates/transaction-emitter-lib/src/emitter/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ use std::{
collections::{HashMap, HashSet},
str::FromStr,
sync::{
atomic::{AtomicBool, Ordering},
atomic::{AtomicBool, AtomicU64, Ordering},
Arc,
},
time::{Duration, Instant},
Expand Down Expand Up @@ -860,14 +860,16 @@ impl TxnEmitter {
// traffic pattern to be correct.
info!("Tx emitter creating workers");
let mut submission_workers = Vec::with_capacity(num_accounts);
let txn_counter: Arc<AtomicU64> = Arc::new(AtomicU64::new(0));
let all_clients = Arc::new(req.rest_clients.clone());
for index in 0..num_accounts {
let main_client_index = index % all_clients.len();

let accounts = all_accounts.split_off(all_accounts.len() - 1);
let stop = stop.clone();
let stats = Arc::clone(&stats);
let txn_generator = txn_generator_creator.create_transaction_generator();
let txn_generator =
txn_generator_creator.create_transaction_generator(txn_counter.clone());
let worker_index = submission_workers.len();

let worker = SubmissionWorker::new(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -322,8 +322,12 @@ impl SubmissionWorker {
accounts
.into_iter()
.flat_map(|account| {
self.txn_generator
.generate_transactions(account.borrow(), self.params.transactions_per_account)
self.txn_generator.generate_transactions(
account.borrow(),
self.params.transactions_per_account,
&Vec::new(),
false,
)
})
.collect()
}
Expand Down
2 changes: 2 additions & 0 deletions crates/transaction-generator-lib/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,11 @@ aptos-framework = { workspace = true }
aptos-infallible = { workspace = true }
aptos-logger = { workspace = true }
aptos-sdk = { workspace = true }
aptos-types = { workspace = true }
async-trait = { workspace = true }
clap = { workspace = true }
move-binary-format = { workspace = true }
move-core-types = { workspace = true }
once_cell = { workspace = true }
rand = { workspace = true }
rand_core = { workspace = true }
Expand Down
9 changes: 7 additions & 2 deletions crates/transaction-generator-lib/src/account_generator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ use aptos_sdk::{
types::{transaction::SignedTransaction, LocalAccount},
};
use rand::{rngs::StdRng, SeedableRng};
use std::sync::Arc;
use std::sync::{atomic::AtomicU64, Arc};

pub struct AccountGenerator {
rng: StdRng,
Expand Down Expand Up @@ -45,6 +45,8 @@ impl TransactionGenerator for AccountGenerator {
&mut self,
account: &LocalAccount,
num_to_create: usize,
_history: &[String],
_market_maker: bool,
) -> Vec<SignedTransaction> {
let mut requests = Vec::with_capacity(num_to_create);
let mut new_accounts = Vec::with_capacity(num_to_create);
Expand Down Expand Up @@ -105,7 +107,10 @@ impl AccountGeneratorCreator {
}

impl TransactionGeneratorCreator for AccountGeneratorCreator {
fn create_transaction_generator(&self) -> Box<dyn TransactionGenerator> {
fn create_transaction_generator(
&self,
_txn_counter: Arc<AtomicU64>,
) -> Box<dyn TransactionGenerator> {
Box::new(AccountGenerator::new(
StdRng::from_entropy(),
self.txn_factory.clone(),
Expand Down
Loading
Loading