bigchaindb/bigchaindb
Ahmed Muawia Khan df5601c2df Last PR before the release of BigchainDB 2.0 Beta 5 2018-08-01 14:43:10 +02:00
..
backend Problem: a valid transaction is detected as double spend (#2389) 2018-07-18 10:52:33 +02:00
commands Refactor tendermint directory to project root (#2401) 2018-07-25 16:59:25 +02:00
common Problem: ReadTheDocs build fails. (#2419) 2018-07-30 15:19:51 +02:00
upsert_validator Problem: ReadTheDocs build fails. (#2419) 2018-07-30 15:19:51 +02:00
web Problem: There is no way to add new validators (BEP-21) (#2392). 2018-07-27 17:38:24 +02:00
README.md Refactor tendermint directory to project root (#2401) 2018-07-25 16:59:25 +02:00
__init__.py Problem: There is no way to add new validators (BEP-21) (#2392). 2018-07-27 17:38:24 +02:00
config_utils.py Problem: It is cumbersome to manage BigchainDB and Tendermint processes (#2410). 2018-07-27 17:33:55 +02:00
consensus.py Problem: voting code is not used anymore (#2357) 2018-06-28 11:30:13 +02:00
core.py Refactor tendermint directory to project root (#2401) 2018-07-25 16:59:25 +02:00
event_stream.py Refactor tendermint directory to project root (#2401) 2018-07-25 16:59:25 +02:00
events.py Problem: Exchange can fail silently (#2177) 2018-04-05 13:57:07 +02:00
exceptions.py Problem: voting code is not used anymore (#2357) 2018-06-28 11:30:13 +02:00
fastquery.py Refactor tendermint directory to project root (#2401) 2018-07-25 16:59:25 +02:00
lib.py Problem: There is no way to add new validators (BEP-21) (#2392). 2018-07-27 17:38:24 +02:00
log.py Problem: It is cumbersome to manage BigchainDB and Tendermint processes (#2410). 2018-07-27 17:33:55 +02:00
models.py Problem: Stateful validation doesn't raise double spend exception (#2422) 2018-07-31 14:06:21 +02:00
start.py Problem: Signals do not propagate to child BigchainDB processes (#2395). 2018-07-26 14:42:32 +02:00
tendermint_utils.py Problem: There is no way to add new validators (BEP-21) (#2392). 2018-07-27 17:38:24 +02:00
utils.py Problem: Bigchaindb startup sometimes fails due genesis block creation during init (#2129) 2018-03-16 16:19:12 +01:00
version.py Last PR before the release of BigchainDB 2.0 Beta 5 2018-08-01 14:43:10 +02:00

README.md

Overview

A high-level description of the files and subdirectories of BigchainDB.

Files

lib.py

The BigchainDB class is defined here. Most node-level operations and database interactions are found in this file. This is the place to start if you are interested in implementing a server API, since many of these class methods concern BigchainDB interacting with the outside world.

models.py

Block, Transaction, and Asset classes are defined here. The classes mirror the block and transaction structure from the documentation, but also include methods for validation and signing.

consensus.py

Base class for consensus methods (verification of votes, blocks, and transactions). The actual logic is mostly found in transaction and block models, defined in models.py.

processes.py

Entry point for the BigchainDB process, after initialization. All subprocesses are started here: processes to handle new blocks, votes, etc.

config_utils.py

Methods for managing the configuration, including loading configuration files, automatically generating the configuration, and keeping the configuration consistent across BigchainDB instances.

Folders

commands

Contains code for the CLI for BigchainDB.

db

Code for building the database connection, creating indexes, and other database setup tasks.