Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

DAWN-214 ⁃ p2p transaction generator plugin #762

Closed
blockone-syncclient opened this issue Nov 22, 2017 · 4 comments
Closed

DAWN-214 ⁃ p2p transaction generator plugin #762

blockone-syncclient opened this issue Nov 22, 2017 · 4 comments
Assignees
Milestone

Comments

@blockone-syncclient
Copy link

blockone-syncclient commented Nov 22, 2017

Phil:

In order to test the p2p infrastructure under the greatest load, I would like a plugin that generates transactions in a configurable way. My idea is that this plugin will behave more-or-less like the http plugin except that it will synthesize transaction data rather than accept it from an external source.

I also expect a multinode testnet to support multiple nodes with this plugin. I assume that the plugin will read a config file, probably json. The launcher app can be enhanced to compose appropriate sets of config files. Configuration items include such details as a range of accounts to produce, contract[s] to load, execution frequency, etc. Finally the plugin should periodically report metrics as appropriate.

As I complete the remaining details of the p2p, I think this will give a more flexible and robust means of driving load tests.

ATC: run the following sequence of steps. note the curl commands end with the http argument.

programs/launcher/launcher -p1 n2 l none
echo "plugin = eosio::txn_test_gen_plugin" >> staging/tn_data_01/config.ini
programs/launcher/launcher ~~p1 n2 -~~nogen

curl --data-binary '["inita", "5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"]' http://localhost:8889/v1/txn_test_gen/create_test_accounts

curl --data-binary '["inita", "5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3"]' http://localhost:8889/v1/txn_test_gen/fund_accounts

curl --data-binary '["one", 400]' http://localhost:8889/v1/txn_test_gen/start_generation

tail tn_data_00/stderr.txt

observe transactions in the output. e.g:
111046ms thread-0 producer_plugin.cpp:246 block_production_loo ] initr generated block #766 @ 2017-12-01T03:01:51 with 42 trxs 0 pending
112035ms thread-0 chain_controller.cpp:371 _generate_block ] generation took 33 ms
112048ms thread-0 chain_controller.cpp:208 _push_block ] inito #767 @2017-12-01T03:01:52 | 33 trx, 0 pending, exectime_ms=12
112049ms thread-0 producer_plugin.cpp:246 block_production_loo ] inito generated block #767 @ 2017-12-01T03:01:52 with 33 trxs 0 pending
113027ms thread-0 chain_controller.cpp:371 _generate_block ] generation took 24 ms
113048ms thread-0 chain_controller.cpp:208 _push_block ] initk #768 @2017-12-01T03:01:53 | 38 trx, 0 pending, exectime_ms=19
113049ms thread-0 producer_plugin.cpp:246 block_production_loo ] initk generated block #768 @ 2017-12-01T03:01:53 with 38 trxs 0 pending
114025ms thread-0 chain_controller.cpp:371 _generate_block ] generation took 23 ms
114039ms thread-0 chain_controller.cpp:208 _push_block ] initj #769 @2017-12-01T03:01:54 | 37 trx, 0 pending, exectime_ms=12
114041ms thread-0 producer_plugin.cpp:246 block_production_loo ] initj generated block #769 @ 2017-12-01T03:01:54 with 37 trxs 0 pending

@blockone-syncclient
Copy link
Author

➤ Corey Lederer commented:

Closing per scrum call 11/20/2017.

@blockone-syncclient
Copy link
Author

➤ Corey Lederer commented:

Re-opening (we probably closed this prematurely). Placing in Sprint 6.

@blockone-syncclient
Copy link
Author

➤ Corey Lederer commented:

Moved over to MAT by mistake. Moving back to STAT

@blockone-syncclient blockone-syncclient changed the title STAT-27 ⁃ p2p transaction generator plugin STAT-214 ⁃ p2p transaction generator plugin Nov 29, 2017
@heifner heifner added this to the EOS Dawn 2.0 milestone Dec 1, 2017
@heifner
Copy link
Contributor

heifner commented Dec 1, 2017

Added and verified by QA.

@heifner heifner closed this as completed Dec 1, 2017
@blockone-syncclient blockone-syncclient changed the title STAT-214 ⁃ p2p transaction generator plugin DAWN-214 ⁃ p2p transaction generator plugin Jan 16, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants