Electroneum
Classes | Namespaces | Macros | Functions | Variables
db_bdb.cpp File Reference
#include "db_bdb.h"
#include <boost/filesystem.hpp>
#include <memory>
#include <cstring>
#include "cryptonote_basic/cryptonote_format_utils.h"
#include "crypto/crypto.h"
#include "profile_tools.h"
Include dependency graph for db_bdb.cpp:

Classes

struct  anonymous_namespace{db_bdb.cpp}::bdb_cur
 
struct  anonymous_namespace{db_bdb.cpp}::Dbt_copy< T >
 
struct  anonymous_namespace{db_bdb.cpp}::Dbt_copy< cryptonote::blobdata >
 
struct  anonymous_namespace{db_bdb.cpp}::Dbt_copy< const char * >
 
struct  anonymous_namespace{db_bdb.cpp}::Dbt_safe
 

Namespaces

 anonymous_namespace{db_bdb.cpp}
 
 cryptonote
 Holds cryptonote related classes and helpers.
 

Macros

#define DB_DEFAULT_TX   (m_write_txn != nullptr ? *m_write_txn : (DbTxn*) nullptr)
 
#define VERSION   0
 
#define DB_COUNT_RECORDS(dbt, cnt)
 

Functions

template<typename T >
void anonymous_namespace{db_bdb.cpp}::throw0 (const T &e)
 
template<typename T >
void anonymous_namespace{db_bdb.cpp}::throw1 (const T &e)
 

Variables

const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCKS = "blocks"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_TIMESTAMPS = "block_timestamps"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_HEIGHTS = "block_heights"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_HASHES = "block_hashes"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_SIZES = "block_sizes"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_DIFFS = "block_diffs"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_BLOCK_COINS = "block_coins"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_TXS = "txs"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_TX_UNLOCKS = "tx_unlocks"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_TX_HEIGHTS = "tx_heights"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_TX_OUTPUTS = "tx_outputs"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_OUTPUT_TXS = "output_txs"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_OUTPUT_INDICES = "output_indices"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_OUTPUT_AMOUNTS = "output_amounts"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_OUTPUT_KEYS = "output_keys"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_SPENT_KEYS = "spent_keys"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_HF_STARTING_HEIGHTS = "hf_starting_heights"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_HF_VERSIONS = "hf_versions"
 
const char *const anonymous_namespace{db_bdb.cpp}::BDB_PROPERTIES = "properties"
 
const unsigned int anonymous_namespace{db_bdb.cpp}::MB = 1024 * 1024
 
const unsigned int anonymous_namespace{db_bdb.cpp}::DB_MAX_LOCKS = 5000
 
const unsigned int anonymous_namespace{db_bdb.cpp}::DB_BUFFER_LENGTH = 32 * MB
 
const unsigned int anonymous_namespace{db_bdb.cpp}::DB_DEF_CACHESIZE = 256 * MB
 
const unsigned int anonymous_namespace{db_bdb.cpp}::DB_BUFFER_COUNT = 1
 

Macro Definition Documentation

◆ DB_COUNT_RECORDS

#define DB_COUNT_RECORDS (   dbt,
  cnt 
)
Value:
do { \
uint32_t *_p = (uint32_t *) ((uint8_t *)(dbt)->data + \
(dbt)->ulen - sizeof(uint32_t)); \
cnt = 0; \
while(*_p != (uint32_t) -1) { \
_p -= 2; \
++cnt; \
} \
} while(0); \

◆ DB_DEFAULT_TX

#define DB_DEFAULT_TX   (m_write_txn != nullptr ? *m_write_txn : (DbTxn*) nullptr)

◆ VERSION

#define VERSION   0