Iroha - A simple, decentralized ledger http://iroha.tech
iroha::ametsuchi::PostgresBlockIndex Class Reference

#include "postgres_block_index.hpp"

Inheritance diagram for iroha::ametsuchi::PostgresBlockIndex:
Inheritance graph
Collaboration diagram for iroha::ametsuchi::PostgresBlockIndex:
Collaboration graph

Public Member Functions

 PostgresBlockIndex (soci::session &sql, logger::Logger log=logger::log("PostgresBlockIndex"))
void index (const shared_model::interface::Block &block) override
- Public Member Functions inherited from iroha::ametsuchi::BlockIndex
virtual ~BlockIndex ()=default

Constructor & Destructor Documentation

iroha::ametsuchi::PostgresBlockIndex::PostgresBlockIndex ( soci::session &  sql,
logger::Logger  log = logger::log("PostgresBlockIndex") 

Member Function Documentation

void iroha::ametsuchi::PostgresBlockIndex::index ( const shared_model::interface::Block block)

Create several indices for block. Namely: transaction hash -> block, where this transaction is stored transaction creator -> block where his transaction is located

Additionally, for each Transfer Asset command:

  1. (account, asset) -> block for each: a. creator of the transaction b. source account c. destination account
  2. account -> block for source and destination accounts
  3. (account, height) -> list of txes

Implements iroha::ametsuchi::BlockIndex.

Here is the call graph for this function:

Here is the caller graph for this function:

The documentation for this class was generated from the following files: