polkadot_node_core_approval_voting/approval_db/mod.rs
1// Copyright (C) Parity Technologies (UK) Ltd.
2// This file is part of Polkadot.
3
4// Polkadot is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8
9// Polkadot is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13
14// You should have received a copy of the GNU General Public License
15// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
16
17//! Approval DB accessors and writers for on-disk persisted approval storage
18//! data.
19//!
20//! We persist data to disk although it is not intended to be used across runs of the
21//! program. This is because under medium to long periods of finality stalling, for whatever
22//! reason that may be, the amount of data we'd need to keep would be potentially too large
23//! for memory.
24//!
25//! With tens or hundreds of parachains, hundreds of validators, and parablocks
26//! in every relay chain block, there can be a humongous amount of information to reference
27//! at any given time.
28//!
29//! As such, we provide a function from this module to clear the database on start-up.
30//! In the future, we may use a temporary DB which doesn't need to be wiped, but for the
31//! time being we share the same DB with the rest of Substrate.
32
33pub mod common;
34pub mod v1;
35pub mod v2;
36pub mod v3;