syntax = "proto3";
package zksync.config.database;
import "zksync/config/experimental.proto";
enum MerkleTreeMode {
FULL = 0;
LIGHTWEIGHT = 1;
}
message MerkleTree {
optional string path = 1; // optional; fs path
optional MerkleTreeMode mode = 2; // optional
optional uint64 multi_get_chunk_size = 3; // optional; ?
optional uint64 block_cache_size_mb = 4; // optional; MB
optional uint64 memtable_capacity_mb = 5; // optional; MB
optional uint64 stalled_writes_timeout_sec = 6; // optional; s
optional uint64 max_l1_batches_per_iter = 7; // optional
}
message DB {
optional string state_keeper_db_path = 1; // optional; fs path
optional MerkleTree merkle_tree = 2; // optional
optional experimental.DB experimental = 3; // optional
}
message Postgres {
optional uint32 max_connections = 4; // optional
optional uint64 statement_timeout_sec = 5; // optional; s
optional uint64 acquire_timeout_sec = 6; // optional; s
optional uint64 long_connection_threshold_ms = 7; // optional; ms
optional uint64 slow_query_threshold_ms = 8; // optional; ms
optional uint32 max_connections_master = 9; // optional
optional TestDatabase test = 10;
reserved 1, 2, 3; reserved "server_url", "server_replica_url", "prover_url";
}
message TestDatabase {
optional string server_url = 1; // optional
optional string prover_url = 2; // optional
}