Skip to content

Conversation

@Eric-Warehime
Copy link
Contributor

@Eric-Warehime Eric-Warehime commented Sep 9, 2025

Description

Integrate block stm into the SDK (baseapp).

Blockstm Integration

This is the final PR in the SDK which will integrate block stm into the application.

It includes changes to baseapp as well as the bank module. The baseapp changes allow a user to set a block stm executor. The default executor is the existing deliverTX function, while the BlockSTMExecutor can be used to enable parallel execution.

The Bank module also includes changes which utilize the object store to store transient data and an end blocker which accumulates the data. This is required in order to avoid bank transfers writing to the same key/value pair in every transaction (which would force re-execution of each transaction and defeat the purpose of parallel execution).

It also includes Context changes which allow caching of values and indices of transactions to be passed around during execution in order to enable in memory caching during execution.

yihuang and others added 30 commits March 27, 2025 16:15
generic interface

generic btree

generic cachekv

generic transient store

support ObjStore

changelog

Update CHANGELOG.md

Signed-off-by: yihuang <[email protected]>

object store key

Apply review suggestions

fix merge conflict

fix snapshot

revert dependers

prefix store support object store (#236)

Problem: snapshot for object store is not skipped (#585)

resolve
…) (#24604)

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alex | Interchain Labs <[email protected]>
Co-authored-by: Alex | Interchain Labs <[email protected]>
Copy link
Contributor

@technicallyty technicallyty left a comment

Choose a reason for hiding this comment

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

initial comments. got like 50% through

@Eric-Warehime Eric-Warehime changed the title feat!: block stm upstream feat!: block stm integration Oct 23, 2025
Copy link
Member

@swift1337 swift1337 left a comment

Choose a reason for hiding this comment

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

Agree with @technicallyty that ideally the RunTx interface should be as concise as possible, otherwise LGTM

Base automatically changed from eric/bstm-upstream to main October 24, 2025 15:55
@Eric-Warehime Eric-Warehime added this pull request to the merge queue Oct 24, 2025
Merged via the queue into main with commit a991f69 Oct 24, 2025
43 checks passed
@Eric-Warehime Eric-Warehime deleted the eric/block-stm-upstream branch October 24, 2025 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants