Skip to content
  • Bastian Köcher's avatar
    Do not call `initialize_block` before any runtime api (#8953) · d489bd70
    Bastian Köcher authored
    * Do not call `initialize_block` before any runtime api
    
    Before this change we always called `initialize_block` before calling
    into the runtime. There was already support with `skip_initialize` to skip
    the initialization. Almost no runtime_api requires that
    `initialize_block` is called before. Actually this only leads to higher
    execution times most of the time, because all runtime modules are
    initialized and this is especially expensive when the block contained a
    runtime upgrade.
    
    TLDR: Do not call `initialize_block` before calling a runtime api.
    
    * Change `validate_transaction` interface
    
    * Fix rpc test
    
    * Fixes and comments
    
    * Some docs
    d489bd70