Skip to content

Lazy Deposit All Module Accounts During EndBlock#313

Merged
BrandonWeng merged 26 commits into2.0.0betafrom
bweng-gas-used-fix
Oct 19, 2022
Merged

Lazy Deposit All Module Accounts During EndBlock#313
BrandonWeng merged 26 commits into2.0.0betafrom
bweng-gas-used-fix

Conversation

@BrandonWeng
Copy link
Contributor

@BrandonWeng BrandonWeng commented Oct 17, 2022

Describe your changes and provide context

Main changes in this PR:
sei-protocol/sei-cosmos#58

We are moving the module deposits to the end of the block and transferring them all at once. This is to prevent the gas fee deposit from being a single source of a bottleneck when it comes to concurrency.

Testing performed to validate your change

Ran 3 iterations of load tests with 5 rounds, and 400 orders per block
image

image

@BrandonWeng BrandonWeng changed the title Bweng gas used fix Lazy Deposit All Module Accounts During EndBlock Oct 18, 2022
@BrandonWeng BrandonWeng requested a review from udpatil October 18, 2022 04:32
@BrandonWeng BrandonWeng marked this pull request as ready for review October 18, 2022 04:36
app/app.go Outdated
return txResults
}

ctx.Logger().Info(fmt.Sprintf("Processing Tx Count=%d", len(txs)))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit - might be good to make this debug & a metric instead

app/app.go Outdated
// Gather Results and store it based on txIndex and read results from channel
// Concurrent results may be in different order than the original txIndex
txResultsMap := map[int]*abci.ExecTxResult{}
ctx.Logger().Info("Waiting for TXs to return")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe set this to debug?

return next(ctx, tx, simulate)
}

func (spd SpammingPreventionDecorator) AnteDeps(txDeps []sdkacltypes.AccessOperation, tx sdk.Tx, next sdk.AnteDepGenerator) (newTxDeps []sdkacltypes.AccessOperation, err error) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

are these AnteDeps functions going to look similar across all antes (i.e. oracle, gasless)? If so, maybe it'll make sense to have this somewhere centralized. If not, ffti

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tony did that in his PR - I'm going to remove my changes and rebase on his

BrandonWeng added a commit to sei-protocol/sei-cosmos that referenced this pull request Oct 18, 2022
## Describe your changes and provide context
Relevant PR:
sei-protocol/sei-chain#313

We are moving the module deposits to the end of the block and
transferring them all at once. This is to prevent the gas fee deposit
from being a single source of a bottleneck when it comes to concurrency.

## Testing performed to validate your change
Ran 3 iterations of load tests with 5 rounds, and 400 orders per block 

![image](https://user-images.githubusercontent.com/18161326/196336249-f150b940-f356-4d9b-a76f-c5cd270a979e.png)


![image](https://user-images.githubusercontent.com/18161326/196336238-3ad5f8a3-afc9-42f1-8b4d-185bad78d8bb.png)
@BrandonWeng BrandonWeng merged commit 9c201eb into 2.0.0beta Oct 19, 2022
udpatil pushed a commit that referenced this pull request Oct 27, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil pushed a commit that referenced this pull request Oct 27, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil pushed a commit that referenced this pull request Oct 27, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil pushed a commit that referenced this pull request Oct 28, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil pushed a commit that referenced this pull request Nov 1, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil pushed a commit that referenced this pull request Nov 1, 2022
* Add AnteHandler access ops

* move to endblocker

* Remove

* deterministic sorting

* bump version

* enable

* logging

* try 1.160 again

* buiil

* new version

* oops

* disable optimistic processing

* re-enable optimistic processing

* disable optimistic processing

* asd

* context cache

* done

* Update version from sei-master

* Disable Parallel TX

* Add timeout to account creation

* linting

* update metrics script

* re-enable parallel tx

* fix for master

* Update metrics.py
udpatil added a commit that referenced this pull request Nov 1, 2022
udpatil added a commit that referenced this pull request Nov 1, 2022
* Revert "Update Antehandler resource depedencies  (#354)"

This reverts commit 6c672fb.

* Revert "update staking validation identifier (#353)"

This reverts commit 8a17c26.

* Revert "Update Oracle Parallel Tx Resource Identifiers  (#351)"

This reverts commit c9229ab.

* Revert "Update IdentifierTemplate for TokenFactory  (#350)"

This reverts commit e81fc93.

* Revert "[loadtest] Loadtest fixes"

This reverts commit 68bfab5.

* Revert "fix unit tests"

This reverts commit 49eb809.

* Revert "Fix Bank Send Unit Tests  (#348)"

This reverts commit 9c11837.

* Revert "integrate with sei-cosmos changes (#347)"

This reverts commit e1b1790.

* Revert "Validate Concurrent Messages + Update BankSend  (#345)"

This reverts commit e4d3176.

* Revert "Add concurrency for BurnMsg and MintMsg (#331)"

This reverts commit 4a5cff0.

* Revert "Ezhu/granularize staking resources (#343)"

This reverts commit 90e288c.

* Revert "Oracle parallel (#334)"

This reverts commit 67c0db3.

* Revert "Ezhu/staking dep gen mappings v2 rebase (#338)"

This reverts commit 1324183.

* Revert "Refactor Loadtest script (#336)"

This reverts commit c8b83c7.

* Revert "Optimize genesis account creation script (#320)"

This reverts commit a0c0306.

* Revert "Wasm gov (#316)"

This reverts commit c3b421b.

* Revert "Lazy Deposit All Module Accounts During EndBlock (#313)"

This reverts commit 5ad4d9b.

* Revert "Wasm signal (#305)"

This reverts commit 206f2bb.

* Revert "Add dependencies for ante handlers that read/write accounts (#314)"

This reverts commit 5d39f90.

* Revert "Add Gasless decorator back and remove CountTxDecorator  (#311)"

This reverts commit 93fa4bd.

* Revert "Branch another cache for all transactions (#309)"

This reverts commit c2ce1ed.

* Revert "Add msg send dynamic access ops (#303)"

This reverts commit 2c5f14e.

* Revert "[ante] Add ante dep generator default behavior (#294)"

This reverts commit 0ada1db.

* Revert "Add more parallel TX metrics (#296)"

This reverts commit 567ffd9.

* Revert "Add aclmapping options and mapping folder (#287)"

This reverts commit c9522a5.

* Revert "Bump sei-cosmos and sei-tendermint for 2.0.0beta (#293)"

This reverts commit d9254b6.

* Revert "Cherry-pick loadtesting changes and make a fix for parallel tx (#288)"

This reverts commit 255fec9.

* Revert "[app] refactored graph into acl module (#286)"

This reverts commit 9b2d204.

* Revert "Add gov proposal handler for acl (#277)"

This reverts commit bbb5a50.

* Revert "Fix for DAG building switch cases (#282)"

This reverts commit 9eebc8e.

* Revert "Optimize signals (#280)"

This reverts commit fd9a3b6.

* Revert "[app] Add behavior to process blocks with gov txs sync (#276)"

This reverts commit ea2a906.

* Revert "[graph] Move metric to dag builder helper (#275)"

This reverts commit c530c02.

* Revert "Fixes for parallel TX and metrics (#272)"

This reverts commit 30207e7.

* Revert "[graph] Add resource hierarchy to dependency graph (#268)"

This reverts commit da7c070.

* Revert "Revert "Parallel TX Synchrnous Testing""

This reverts commit f343740.

* Revert "Parallel TX Synchrnous Testing"

This reverts commit b95b44c.

* Revert "Dag optimization (#263)"

This reverts commit ac3fdbf.

* Revert "Create Channels from DAG (#261)"

This reverts commit 35b9cf4.

* Revert "[accesscontrol] Add dependency dag (#258)"

This reverts commit 6721845.

* Revert "Register accesscontrol module (#257)"

This reverts commit 3e34d34.
masih pushed a commit that referenced this pull request Sep 29, 2025
## Describe your changes and provide context
Relevant PR:
#313

We are moving the module deposits to the end of the block and
transferring them all at once. This is to prevent the gas fee deposit
from being a single source of a bottleneck when it comes to concurrency.

## Testing performed to validate your change
Ran 3 iterations of load tests with 5 rounds, and 400 orders per block 

![image](https://user-images.githubusercontent.com/18161326/196336249-f150b940-f356-4d9b-a76f-c5cd270a979e.png)


![image](https://user-images.githubusercontent.com/18161326/196336238-3ad5f8a3-afc9-42f1-8b4d-185bad78d8bb.png)
masih pushed a commit that referenced this pull request Sep 29, 2025
## Describe your changes and provide context
Add workflow to registry proto files to buf.build upon changes

## Testing performed to validate your change
see if files are pushed when the branch is merged into main
masih pushed a commit that referenced this pull request Sep 30, 2025
## Describe your changes and provide context
Relevant PR:
#313

We are moving the module deposits to the end of the block and
transferring them all at once. This is to prevent the gas fee deposit
from being a single source of a bottleneck when it comes to concurrency.

## Testing performed to validate your change
Ran 3 iterations of load tests with 5 rounds, and 400 orders per block 

![image](https://user-images.githubusercontent.com/18161326/196336249-f150b940-f356-4d9b-a76f-c5cd270a979e.png)


![image](https://user-images.githubusercontent.com/18161326/196336238-3ad5f8a3-afc9-42f1-8b4d-185bad78d8bb.png)
masih pushed a commit that referenced this pull request Sep 30, 2025
## Describe your changes and provide context
Add workflow to registry proto files to buf.build upon changes

## Testing performed to validate your change
see if files are pushed when the branch is merged into main
masih added a commit that referenced this pull request Oct 1, 2025
Integrate the very basic unified CI process for bare minimum linting of
Go files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants