bigchaindb/bigchaindb
Troy McConaghy f8191b0d8e
Last commit before v2.0.0b9 (#2608)
2018-11-27 19:50:05 +01:00
..
backend Account for values that are arrays/lists (#2607) 2018-11-25 20:24:03 +01:00
commands Implement crash recovery for elections. (#2566) 2018-09-28 12:32:45 +02:00
common Account for values that are arrays/lists (#2607) 2018-11-25 20:24:03 +01:00
elections Implement crash recovery for elections. (#2566) 2018-09-28 12:32:45 +02:00
migrations Implement crash recovery for elections. (#2566) 2018-09-28 12:32:45 +02:00
upsert_validator Update acceptance Dockerfile to use latest Python driver (#2594) 2018-11-03 17:34:36 +01:00
web Update acceptance Dockerfile to use latest Python driver (#2594) 2018-11-03 17:34:36 +01:00
README.md Renamed "consensus" to "validation" where relevant (#2561) 2018-09-20 17:17:33 +02:00
__init__.py Create migration election class (#2535). 2018-09-17 13:59:57 +02:00
config_utils.py Renamed "consensus" to "validation" where relevant (#2561) 2018-09-20 17:17:33 +02:00
core.py Implement crash recovery for elections. (#2566) 2018-09-28 12:32:45 +02:00
events.py Problem: Source files contain no license info (#2455) 2018-08-16 12:31:32 +02:00
exceptions.py Problem: Source files contain no license info (#2455) 2018-08-16 12:31:32 +02:00
fastquery.py Problem: Source files contain no license info (#2455) 2018-08-16 12:31:32 +02:00
lib.py Implement crash recovery for elections. (#2566) 2018-09-28 12:32:45 +02:00
log.py Remove benchmark logging (#2565). 2018-09-20 14:30:30 +02:00
models.py Problem: "language" values are not being checked in metadata (#2606) 2018-11-25 19:11:35 +01:00
parallel_validation.py Problem: validation is slow (#2489) 2018-09-13 12:16:45 +02:00
start.py Problem: validation is slow (#2489) 2018-09-13 12:16:45 +02:00
tendermint_utils.py Problem: Source files contain no license info (#2455) 2018-08-16 12:31:32 +02:00
utils.py Problem: Users trying to use an incompatible version of Tendermint (#2541) 2018-09-14 15:37:18 +02:00
validation.py Renamed "consensus" to "validation" where relevant (#2561) 2018-09-20 17:17:33 +02:00
version.py Last commit before v2.0.0b9 (#2608) 2018-11-27 19:50:05 +01: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.

validation.py

Base class for validation 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.