Golos
Разработчикам Статистика Баунти Документация Партнеры Github
Public Member Functions | Public Attributes | List of all members
golos::chain::account_transaction_history_object Class Reference

a node in a linked list of operation_history_objectsAccount history is important for users and wallets even though it is not part of "core validation". Account history is maintained as a linked list stored on disk in a stack. Each account will point to the most recent account history object by ID. When a new operation relativent to that account is processed a new account history object is allcoated at the end of the stack and intialized to point to the prior object. More...

#include <operation_history_object.hpp>

Inheritance diagram for golos::chain::account_transaction_history_object:

Public Member Functions

 account_transaction_history_object ()=delete
 
template<typename Constructor , typename Allocator >
 account_transaction_history_object (Constructor &&c, allocator< Allocator > a)
 

Public Attributes

id_type id
 
account_name_type account
 
operation_history_object::id_type operation_id
 the account this operation applies to More...
 
uint32_t sequence = 0
 
account_transaction_history_object::id_type next
 the operation position within the given account More...
 

Detailed Description

a node in a linked list of operation_history_objects

Account history is important for users and wallets even though it is not part of "core validation". Account history is maintained as a linked list stored on disk in a stack. Each account will point to the most recent account history object by ID. When a new operation relativent to that account is processed a new account history object is allcoated at the end of the stack and intialized to point to the prior object.

This data is never accessed as part of chain validation and therefore can be kept on disk as a memory mapped file. Using a memory mapped file will help the operating system better manage / cache / page files and also accelerates load time.

When the transaction history for a particular account is requested the linked list can be traversed with relatively effecient disk access because of the use of a memory mapped stack.

Definition at line 69 of file operation_history_object.hpp.

Constructor & Destructor Documentation

◆ account_transaction_history_object() [1/2]

golos::chain::account_transaction_history_object::account_transaction_history_object ( )
delete

◆ account_transaction_history_object() [2/2]

template<typename Constructor , typename Allocator >
golos::chain::account_transaction_history_object::account_transaction_history_object ( Constructor &&  c,
allocator< Allocator >  a 
)
inline

Definition at line 75 of file operation_history_object.hpp.

Member Data Documentation

◆ account

account_name_type golos::chain::account_transaction_history_object::account

Definition at line 81 of file operation_history_object.hpp.

◆ id

id_type golos::chain::account_transaction_history_object::id

Definition at line 77 of file operation_history_object.hpp.

◆ next

account_transaction_history_object::id_type golos::chain::account_transaction_history_object::next

the operation position within the given account

Definition at line 84 of file operation_history_object.hpp.

◆ operation_id

operation_history_object::id_type golos::chain::account_transaction_history_object::operation_id

the account this operation applies to

Definition at line 82 of file operation_history_object.hpp.

◆ sequence

uint32_t golos::chain::account_transaction_history_object::sequence = 0

Definition at line 83 of file operation_history_object.hpp.


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